0
0
mirror of https://github.com/bec-project/bec_widgets.git synced 2025-07-14 11:41:49 +02:00

test: register all widgets with qtbot and close them

This commit is contained in:
2024-07-28 13:03:34 +02:00
committed by wyzula_j
parent 7616ca0e14
commit 73cd11e472
10 changed files with 23 additions and 9 deletions

View File

@ -12,6 +12,7 @@ def scan_control(qtbot, bec_client_lib): # , mock_dev):
qtbot.addWidget(widget) qtbot.addWidget(widget)
qtbot.waitExposed(widget) qtbot.waitExposed(widget)
yield widget yield widget
widget.close()
def test_scan_control_populate_scans_e2e(scan_control): def test_scan_control_populate_scans_e2e(scan_control):

View File

@ -8,6 +8,7 @@ from bec_widgets.utils import bec_dispatcher as bec_dispatcher_module
@pytest.fixture(autouse=True) @pytest.fixture(autouse=True)
def qapplication(qapp): # pylint: disable=unused-argument def qapplication(qapp): # pylint: disable=unused-argument
yield yield
qapp.processEvents() # make sure all events are processed before shutting down
@pytest.fixture(autouse=True) @pytest.fixture(autouse=True)

View File

@ -93,6 +93,7 @@ def bec_queue(qtbot, mocked_client):
qtbot.addWidget(widget) qtbot.addWidget(widget)
qtbot.waitExposed(widget) qtbot.waitExposed(widget)
yield widget yield widget
widget.close()
def test_bec_queue(bec_queue, bec_queue_msg_full): def test_bec_queue(bec_queue, bec_queue_msg_full):

View File

@ -20,6 +20,7 @@ def status_box(qtbot, mocked_client, service_status_fixture):
qtbot.addWidget(widget) qtbot.addWidget(widget)
qtbot.waitExposed(widget) qtbot.waitExposed(widget)
yield widget yield widget
widget.close()
def test_update_top_item(status_box): def test_update_top_item(status_box):

View File

@ -8,13 +8,18 @@ from .client_mocks import mocked_client
# DeviceInputBase is meant to be mixed in a QWidget # DeviceInputBase is meant to be mixed in a QWidget
class DeviceInputWidget(DeviceInputBase, QWidget): class DeviceInputWidget(DeviceInputBase, QWidget):
pass def __init__(self, parent=None, client=None, config=None, gui_id=None):
super().__init__(client=client, config=config, gui_id=gui_id)
QWidget.__init__(self, parent=parent)
@pytest.fixture @pytest.fixture
def device_input_base(mocked_client): def device_input_base(qtbot, mocked_client):
widget = DeviceInputWidget(client=mocked_client) widget = DeviceInputWidget(client=mocked_client)
qtbot.addWidget(widget)
qtbot.waitExposed(widget)
yield widget yield widget
widget.close()
def test_device_input_base_init(device_input_base): def test_device_input_base_init(device_input_base):

View File

@ -220,6 +220,7 @@ def scan_control(qtbot, mocked_client): # , mock_dev):
qtbot.addWidget(widget) qtbot.addWidget(widget)
qtbot.waitExposed(widget) qtbot.waitExposed(widget)
yield widget yield widget
widget.close()
def test_populate_scans(scan_control, mocked_client): def test_populate_scans(scan_control, mocked_client):

View File

@ -46,23 +46,23 @@ def test_setting_widget_display_current_settings(setting_widget):
# SettingsDialog tests # SettingsDialog tests
################################### ###################################
@pytest.fixture @pytest.fixture
def settings_dialog(qtbot): def settings_dialog(qtbot, setting_widget):
parent_widget = QWidget() parent_widget = QWidget()
settings_widget = SettingWidget() setting_widget.set_target_widget = MagicMock()
settings_widget.set_target_widget = MagicMock() setting_widget.display_current_settings = MagicMock()
settings_widget.display_current_settings = MagicMock() setting_widget.accept_changes = MagicMock()
settings_widget.accept_changes = MagicMock()
dialog = SettingsDialog( dialog = SettingsDialog(
parent=parent_widget, parent=parent_widget,
settings_widget=settings_widget, settings_widget=setting_widget,
window_title="Test Settings", window_title="Test Settings",
config={"setting1": "value1", "setting2": "value2"}, config={"setting1": "value1", "setting2": "value2"},
) )
qtbot.addWidget(dialog) qtbot.addWidget(dialog)
qtbot.waitExposed(dialog) qtbot.waitExposed(dialog)
yield dialog, parent_widget, settings_widget yield dialog, parent_widget, setting_widget
dialog.close() dialog.close()
parent_widget.close()
def test_settings_dialog_initialization(settings_dialog): def test_settings_dialog_initialization(settings_dialog):

View File

@ -12,6 +12,7 @@ def spinner_widget(qtbot):
qtbot.addWidget(spinner) qtbot.addWidget(spinner)
qtbot.waitExposed(spinner) qtbot.waitExposed(spinner)
yield spinner yield spinner
spinner.close()
def test_spinner_widget_paint_event(spinner_widget, qtbot): def test_spinner_widget_paint_event(spinner_widget, qtbot):

View File

@ -10,6 +10,7 @@ def toggle(qtbot):
qtbot.addWidget(widget) qtbot.addWidget(widget)
qtbot.waitExposed(widget) qtbot.waitExposed(widget)
yield widget yield widget
widget.close()
def test_toggle(toggle): def test_toggle(toggle):

View File

@ -14,7 +14,9 @@ from .client_mocks import mocked_client
def vscode_widget(qtbot, mocked_client): def vscode_widget(qtbot, mocked_client):
with mock.patch("bec_widgets.widgets.vscode.vscode.subprocess.Popen") as mock_popen: with mock.patch("bec_widgets.widgets.vscode.vscode.subprocess.Popen") as mock_popen:
widget = VSCodeEditor(client=mocked_client) widget = VSCodeEditor(client=mocked_client)
# qtbot.addWidget(widget)
yield widget yield widget
# widget.close()
def test_vscode_widget(qtbot, vscode_widget): def test_vscode_widget(qtbot, vscode_widget):