mirror of
https://github.com/bec-project/bec_widgets.git
synced 2026-05-13 10:05:44 +02:00
wip fix group scan box
This commit is contained in:
@@ -271,9 +271,19 @@ class ScanGroupBox(QGroupBox):
|
||||
continue
|
||||
if default == "_empty":
|
||||
default = None
|
||||
widget = widget_class(parent=self.parent(), arg_name=arg_name, default=default)
|
||||
if widget_class is DeviceComboBox:
|
||||
widget = widget_class(parent=self.parent(), arg_name=arg_name)
|
||||
else:
|
||||
widget = widget_class(parent=self.parent(), arg_name=arg_name, default=default)
|
||||
if isinstance(widget, DeviceComboBox):
|
||||
widget.set_device_filter(BECDeviceFilter.DEVICE)
|
||||
if item["type"] == ScanArgType.DEVICE:
|
||||
widget.set_device_filter(BECDeviceFilter.POSITIONER)
|
||||
else:
|
||||
widget.set_device_filter(BECDeviceFilter.DEVICE)
|
||||
if default is None:
|
||||
widget.set_first_element_as_empty = True
|
||||
else:
|
||||
widget.set_device(default)
|
||||
self.selected_devices[widget] = ""
|
||||
widget.device_selected.connect(self.emit_device_selected)
|
||||
if isinstance(widget, ScanLiteralsComboBox):
|
||||
|
||||
@@ -9,6 +9,7 @@ from qtpy.QtCore import QModelIndex, Qt
|
||||
|
||||
from bec_widgets.utils.forms_from_types.items import StrFormItem
|
||||
from bec_widgets.utils.widget_io import WidgetIO
|
||||
from bec_widgets.widgets.control.device_input.device_combobox.device_combobox import DeviceComboBox
|
||||
from bec_widgets.widgets.control.scan_control import ScanControl
|
||||
|
||||
from .client_mocks import mocked_client
|
||||
@@ -304,6 +305,10 @@ def test_on_scan_selected(scan_control, scan_name):
|
||||
assert widget is not None # Confirm that a widget exists
|
||||
expected_widget_type = scan_control.arg_box.WIDGET_HANDLER.get(arg_value, None)
|
||||
assert isinstance(widget, expected_widget_type) # Confirm the widget type matches
|
||||
if isinstance(widget, DeviceComboBox):
|
||||
assert widget.currentText() == ""
|
||||
assert "samx" in widget.devices
|
||||
assert "bpm3a" not in widget.devices
|
||||
|
||||
# Check kwargs boxes
|
||||
kwargs_group = [param for param in expected_scan_info["gui_config"]["kwarg_groups"]]
|
||||
|
||||
Reference in New Issue
Block a user