mirror of
https://github.com/bec-project/bec_widgets.git
synced 2026-11-12 12:34:07 +01:00
feat(tests): ship widget test fixtures importable by plugin repositories
This commit is contained in:
1 parent
d4eb7cbb51
commit
7262291818
6 files changed
+482
-458
No files matched your search
@@ -1,5 +1,7 @@
|
||||
import sys
|
||||
from unittest.mock import MagicMock
|
||||
|
||||
from bec_widgets.tests.testable_qtimer import TestableQTimer
|
||||
from bec_widgets.widgets.services.bec_status_box.bec_status_box import BECServiceStatusMixin
|
||||
|
||||
|
||||
@@ -8,3 +10,16 @@ def test_qtimer_uses_testable_qtimer():
|
||||
assert service_status._service_update_timer.__class__.__name__ != "QTimer"
|
||||
assert service_status._service_update_timer.__class__.__name__ == "TestableQTimer"
|
||||
service_status.cleanup()
|
||||
|
||||
|
||||
def test_no_module_binds_the_unpatched_qtimer():
|
||||
"""bec_widgets.tests.fixtures must patch QTimer before anything imports it by name."""
|
||||
unpatched_qtimer = TestableQTimer.__bases__[0]
|
||||
bound = [
|
||||
name
|
||||
for name, module in list(sys.modules.items())
|
||||
if name.startswith(("bec_widgets", "bec_qthemes"))
|
||||
and name != "bec_widgets.tests.testable_qtimer"
|
||||
and getattr(module, "QTimer", None) is unpatched_qtimer
|
||||
]
|
||||
assert bound == []
|
||||
Reference in new issue
Block a user