0
0
mirror of https://github.com/bec-project/bec_widgets.git synced 2025-07-13 19:21:50 +02:00

fix: parse config on submission and reload after

This commit is contained in:
2025-06-17 08:52:08 +02:00
committed by David Perl
parent 4d8c07cdd1
commit 5e4c129af6
7 changed files with 51 additions and 29 deletions

View File

@ -26,6 +26,7 @@ if TYPE_CHECKING: # pragma: no cover
@pytest.fixture
def device_browser(qtbot, mocked_client):
dev_browser = DeviceBrowser(client=mocked_client)
dev_browser.dev["samx"].read_configuration = mock.MagicMock()
qtbot.addWidget(dev_browser)
qtbot.waitExposed(dev_browser)
yield dev_browser
@ -88,8 +89,9 @@ def test_device_item_expansion(device_browser, qtbot):
form = widget._contents.layout().itemAt(0).widget()
qtbot.waitUntil(lambda: isinstance(form, DeviceConfigForm), timeout=500)
assert widget.expanded
device_browser.dev["samx"].read_configuration.assert_called()
assert (name_field := form.widget_dict.get("name")) is not None
assert name_field.getValue() == "samx"
qtbot.waitUntil(lambda: name_field.getValue() == "samx", timeout=500)
qtbot.mouseClick(widget._expansion_button, Qt.MouseButton.LeftButton)
assert not widget.expanded

View File

@ -81,8 +81,8 @@ def test_waiting_display(dialog, qtbot):
def test_update_cycle(dialog, qtbot):
update = {"enabled": False, "readoutPriority": "baseline", "deviceTags": {"tag"}}
def _mock_send(a, c, w):
dialog.client.device_manager.devices["test_device"]._config = c["test_device"]
def _mock_send(action="update", config=None, wait_for_response=True, timeout_s=None):
dialog.client.device_manager.devices["test_device"]._config = config["test_device"] # type: ignore
dialog._config_helper.send_config_request = MagicMock(side_effect=_mock_send)
for item in dialog._form.enumerate_form_widgets():