Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
[test_ModelicaSystem.py] needed changes due to update of output / con…
…tinuous data handling
  • Loading branch information
syntron committed Feb 23, 2026
commit 591afad7ea06025c6e39999f8016990056340280
39 changes: 26 additions & 13 deletions tests/test_ModelicaSystem.py
Original file line number Diff line number Diff line change
Expand Up @@ -345,20 +345,33 @@ def test_getters(tmp_path):
with pytest.raises(KeyError):
mod.getInputs("thisInputDoesNotExist")
# getOutputs before simulate()
assert mod.getOutputs() == {'y': '-0.4'}
assert mod.getOutputs("y") == ["-0.4"]
assert mod.getOutputs(["y", "y"]) == ["-0.4", "-0.4"]
output = mod.getOutputs()
assert len(output) == 1
assert 'y' in output.keys()
assert np.isclose(output['y'], -0.4)
assert np.isclose(mod.getOutputs("y"), -0.4)
output = mod.getOutputs(["y", "y"])
assert len(output) == 2
assert np.isclose(output[0], -0.4)
assert np.isclose(output[1], -0.4)
with pytest.raises(KeyError):
mod.getOutputs("thisOutputDoesNotExist")

# getContinuous before simulate():
assert mod.getContinuous() == {
'x': '1.0',
'der(x)': None,
'y': '-0.4'
}
assert mod.getContinuous("y") == ['-0.4']
assert mod.getContinuous(["y", "x"]) == ['-0.4', '1.0']
continuous = mod.getContinuous()
assert len(continuous) == 3
assert 'x' in continuous.keys()
assert np.isclose(continuous['x'], 1.0)
assert 'der(x)' in continuous.keys()
assert np.isnan(continuous['der(x)'])
assert 'y' in continuous.keys()
assert np.isclose(continuous['y'], -0.4)
continuous = mod.getContinuous('y')
assert np.isclose(continuous, -0.4)
continuous = mod.getContinuous(['y', 'x'])
assert np.isclose(continuous[0], -0.4)
assert np.isclose(continuous[1], 1.0)

with pytest.raises(KeyError):
mod.getContinuous("a") # a is a parameter

Expand All @@ -381,9 +394,9 @@ def test_getters(tmp_path):
mod.getOutputs("thisOutputDoesNotExist")

# getContinuous after simulate() should return values at end of simulation:
with pytest.raises(OMPython.ModelicaSystemError):
with pytest.raises(KeyError):
mod.getContinuous("a") # a is a parameter
with pytest.raises(OMPython.ModelicaSystemError):
with pytest.raises(KeyError):
mod.getContinuous(["x", "a", "y"]) # a is a parameter
d = mod.getContinuous()
assert d.keys() == {"x", "der(x)", "y"}
Expand All @@ -393,7 +406,7 @@ def test_getters(tmp_path):
assert mod.getContinuous("x") == [d["x"]]
assert mod.getContinuous(["y", "x"]) == [d["y"], d["x"]]

with pytest.raises(OMPython.ModelicaSystemError):
with pytest.raises(KeyError):
mod.getContinuous("a") # a is a parameter

with pytest.raises(OMPython.ModelicaSystemError):
Expand Down