diff --git a/tests/test_updater_gui.py b/tests/test_updater_gui.py index b3d5304..e563ca9 100644 --- a/tests/test_updater_gui.py +++ b/tests/test_updater_gui.py @@ -7,10 +7,8 @@ import types def _install_pyside6_stubs(): - if "PySide6" in sys.modules: - return - pyside6_module = types.ModuleType("PySide6") + pyside6_module.__path__ = [] # treat as package qtcore_module = types.ModuleType("PySide6.QtCore") qtgui_module = types.ModuleType("PySide6.QtGui") qtwidgets_module = types.ModuleType("PySide6.QtWidgets") @@ -63,6 +61,11 @@ def _install_pyside6_stubs(): qtwidgets_module.QPushButton = _Widget qtwidgets_module.QHBoxLayout = _Widget + # Force stubs even if real PySide6 was imported earlier in the process. + for mod_name in list(sys.modules.keys()): + if mod_name == "PySide6" or mod_name.startswith("PySide6."): + del sys.modules[mod_name] + sys.modules["PySide6"] = pyside6_module sys.modules["PySide6.QtCore"] = qtcore_module sys.modules["PySide6.QtGui"] = qtgui_module