Skip to content

D007 define unit test for v4.0.0 compatibility layer#438

Open
syntron wants to merge 24 commits intoOpenModelica:masterfrom
syntron:D007-test_v400
Open

D007 define unit test for v4.0.0 compatibility layer#438
syntron wants to merge 24 commits intoOpenModelica:masterfrom
syntron:D007-test_v400

Conversation

@syntron
Copy link
Contributor

@syntron syntron commented Feb 27, 2026

this adds a second unittest branch (test_v400) to check for v4.0.0 compatibility

should be merged after D008! (PR #437)

flake8 error: test_linearization.py:71:5: E741 ambiguous variable name 'l'

this was fixed in: 'update usage of flake8 (OpenModelica#357)' (SHA1: 70cb446)
* convert OMCPath to pathlib.Path
* use correct exceptions
[ModelicaSystemDoE] simplify definition; use a Modelicasystem instance as argument

[ModelicaSystemDoE] update docstring

[ModelicaSystemDoE] fix for relative paths

[ModelicaSystemDoE] fix unittest

* test_ModelicaSystemDoE_local is tested
* test_ModelicaSystemDoE_docker should work
* test_ModelicaSystemDoE_WSL is untested
[ModelExecution*] create classes to handle model execution

* rename ModelicaSystemCmd => ModelExecutionCmd
* rename OMCSessionRunData => ModelExecutionData
* create class ModelExecutionException
* move some code:
  * OMCSession.omc_run_data_update() => merge into ModelExecutionCmd.define()
  * OMCSession.run_model_executable() => ModelExecutionData.run()

[test_ModelicaSystemCmd] update unittest

[ModelExecutionData] include the original exception if reraised as ModelExecutionException

[ModelicaSystem] fix usage of ModelicaSystemCmd
[ModelicaSystem] split ModelicaSystem into ModelicaSystemABC and ModelicaSystem

[ModelicaSystem] rename ModelicaSystem => ModelicaSystemOMC

* add compatibility variable for ModelicaSystem

[test_ModelicaSystemOMC] rename from ModelicaSystem and update

[test_*] use ModelicaSystemOMC

[ModelicaSystem*] fix last usages of ModelicaSystem() in comments & docstrings
[ModelicaSystem] split ModelicaSystemDoE into ModelicaDoEABC and ModelicaDoE

[ModelicaSystem] rename ModelicaSystemDoE => ModelicaDoEOMC

* add compatibility variable for ModelicaSystemDoE

[test_ModelicaDoEOMC] rename from ModelicaSystemDoE and update

[ModelicaSystem] update ModelicaDoEABC to use ModelicaSystemABC

[ModelicaSystem] define doe_get_solutions() as separate method
[OMCSession] update OMCPath to use OMPathABC as baseline and further cleanup

[ModelicaSystem] shortcut to use OMCPath = OMPathABC for now

[ModelicaSystem] fix usage of OMCPath; replace by OMPathABC

[OMCSession] move OM(C)Path classes into the if cause

[OMCSession] define and use OMPathBase

[OMCSession] align on OMPathABC; replace usage of OMPathBase
[OMCSession] update OMCSession* to use OMSessionABC as baseline and further cleanup

[ModelicaSystem] shortcut to use OMCSession = OMSessionABC for now

[ModelicaSystem] fix usage of OMCSession; replace by OMSessionABC

fix usage of OMCSession

[OMSessionABC] fix OMCPath; rename to OMPathABC
[OMCSession] add *Runner related classes for OMPath and OMSession

[ModelicaSystem] add ModelicaSystemRunner

[test_ModelicaSystemRunner] add test case for ModelicaSystemRunner

[ModelicaSystem] add ModelicaDoERunner

[test_ModelicaDoERunner] add test case for ModelicaDoERunner

[OMCSession] move OMCPathRunner* into the if clause

[OMSessionRunner] fix usage of sendExpression()

[__init__] add missing definitions for *Runner classes

[ModelicaDoERunner] fix definition; allow all variations of ModelicaSystem*

[test_ModelicaDoERunner] fix definition; test ModelicaSystem(OCM|Runner)

[ModelicaDoEABC] add get_resultpath()
* comments
* prepare cmd_prefix handling within OMSession
* fix timeout handling
[__init__] define OMSessionABC in the public interface

[OMCSessionZMQ] move class definition such that it can be derived from OMSessionABC

* needed for the compatibility layer
[OMPathABC] improve definition

* add get_session()
* fix return values

[(_)OMCPath] improve definition

* check return value from OMC
* define return value for methods
[(_)OMPathRunnerLocal] improve definition

* fix return values
* additional cleanups

[__init__] define OMPathRunnerLocal for public interface

[_OMPathRunnerBash] define class

[__init__] define OMPathRunnerBash for public interface

[OMSessionRunner] update code such that it can be used by OMPathRunnerLocal and OMPathRunner Bash
[OMCSessionPort] fix timeout handling

[OMCSessionDocker*] improve data handling

* move more code to OMCSessionDockerHelper
* use _docker_omc_start() to differentiate classes
* define cmd_prefix

[OMCSessionWSL] define cmd_prefix

[OMCSessionWSL] layout fix
[ModelicaSystemABC] reorder code in __init__()

[ModelicaSystem*] linter fixes
[OMTypedParser] compatibility layer

[__init__/OMCSession] prepare compatibility layer

[ModelicaSystem] define as compatibility layer

[ModelicaSystemCmd] define as compatibility layer
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant