diff --git a/epowcore/power_factory/utils.py b/epowcore/power_factory/utils.py index 22d38d7..5ff2b35 100644 --- a/epowcore/power_factory/utils.py +++ b/epowcore/power_factory/utils.py @@ -51,9 +51,13 @@ def get_ctrl_param(ctrl_obj: Any, param: str | list[str]) -> Any: :rtype: Any """ model_params = ctrl_obj.GetAttribute("parameterNames") - if not isinstance(model_params, list): - raise TypeError("Expected params to be a list: ['A,B,C']") - model_params = model_params[0].split(",") + + if isinstance(model_params, str): + model_params = model_params.split(",") + elif isinstance(model_params, list): + model_params = model_params[0].split(",") + else: + raise TypeError("Expected parameterNames to be a string or list") if isinstance(param, str): if param not in model_params: diff --git a/tests/local/powerfactory_test.py b/tests/local/powerfactory_test.py index d31a2f7..d3cd29b 100644 --- a/tests/local/powerfactory_test.py +++ b/tests/local/powerfactory_test.py @@ -2,8 +2,8 @@ import sys -PF_ROOT = r"C:\Program Files\DIgSILENT\PowerFactory 2023 SP2" -PF_PY = r"C:\Program Files\DIgSILENT\PowerFactory 2023 SP2\Python\3.10" +PF_ROOT = r"C:\Program Files\DIgSILENT\PowerFactory 2025 SP4" +PF_PY = r"C:\Program Files\DIgSILENT\PowerFactory 2025 SP4\Python\3.11" sys.path.append(PF_PY) diff --git a/tests/power_factory/pf_converter_test.py b/tests/power_factory/pf_converter_test.py index 04992cb..0dc457e 100644 --- a/tests/power_factory/pf_converter_test.py +++ b/tests/power_factory/pf_converter_test.py @@ -17,8 +17,8 @@ def test_minimal_conversion_no_errors(self) -> None: converter = PowerFactoryConverter() core_model = converter.to_gdf(PFModel("Minimal", "Base", 50.0)) - self.assertEqual(len(core_model.graph.nodes), 8) - self.assertEqual(len(core_model.graph.edges), 7) + self.assertEqual(len(core_model.graph.nodes), 10) + self.assertEqual(len(core_model.graph.edges), 9) two_winding_id = core_model.type_list(TwoWindingTransformer)[0].uid