diff --git a/packages/conftest.py b/packages/conftest.py index 28c5f9ea26..b58a69d591 100644 --- a/packages/conftest.py +++ b/packages/conftest.py @@ -25,6 +25,13 @@ def pytest_configure(config): config.addinivalue_line("markers", "no_mock_full_hour: mark test to disable full_hour mocking.") config.addinivalue_line("markers", "no_mock_quarter_hour: mark test to disable quarter_hour mocking.") + import sys + sys._called_from_test = True + + +def pytest_unconfigure(config): + import sys + del sys._called_from_test @pytest.fixture(autouse=True) diff --git a/packages/modules/configuration.py b/packages/modules/configuration.py index b9ab393811..1f1026a99b 100644 --- a/packages/modules/configuration.py +++ b/packages/modules/configuration.py @@ -6,6 +6,7 @@ import dataclass_utils from helpermodules.pub import Pub from modules.io_actions.groups import READABLE_GROUP_NAME, ActionGroup +import sys log = logging.getLogger(__name__) @@ -165,8 +166,10 @@ def _pub_configurable_soc_modules() -> None: "text": dev_defaults.name, "defaults": dataclass_utils.asdict(dev_defaults) }) - except Exception: - log.exception("Fehler im configuration-Modul") + except Exception as e: + log.exception(f"Fehler {e} im configuration-Modul {path}") + if hasattr(sys, '_called_from_test'): + print(f"Fehler {e} im configuration-Modul {path}") soc_modules = sorted(soc_modules, key=lambda d: d['text'].upper()) # "leeren" Eintrag an erster Stelle einfügen soc_modules.insert(0, @@ -179,8 +182,10 @@ def _pub_configurable_soc_modules() -> None: } }) Pub().pub("openWB/set/system/configurable/soc_modules", soc_modules) - except Exception: - log.exception("Fehler im configuration-Modul") + except Exception as e: + log.exception(f"Fehler {e} im configuration-Modul {path}") + if hasattr(sys, '_called_from_test'): + print(f"Fehler {e} im configuration-Modul {path}") def _pub_configurable_devices_components() -> None: