diff --git a/debye_bec/devices/mo1_bragg/mo1_bragg_angle.py b/debye_bec/devices/mo1_bragg/mo1_bragg_angle.py index dbc4f51..46a095a 100644 --- a/debye_bec/devices/mo1_bragg/mo1_bragg_angle.py +++ b/debye_bec/devices/mo1_bragg/mo1_bragg_angle.py @@ -1,19 +1,20 @@ -from debye_bec.devices.mo1_bragg.mo1_bragg_devices import Mo1BraggPositioner +"""Positioner implementation with readback angle of the MO1 Bragg positioner.""" + from ophyd import Component as Cpt -from ophyd import EpicsSignalWithRBV, EpicsSignalRO +from ophyd import EpicsSignalRO, EpicsSignalWithRBV + +from debye_bec.devices.mo1_bragg.mo1_bragg_devices import Mo1BraggPositioner + class Mo1BraggAngle(Mo1BraggPositioner): - """ Positioner implementation with readback angle of the MO1 Bragg positioner.""" + """Positioner implementation with readback angle of the MO1 Bragg positioner.""" - readback = Cpt( - EpicsSignalRO, suffix="feedback_pos_angle_RBV", kind="normal", auto_monitor=True - ) - setpoint = Cpt( - EpicsSignalWithRBV, suffix="set_abs_pos_angle", kind="normal", auto_monitor=True - ) - low_lim = Cpt( - EpicsSignalRO, suffix="lo_lim_pos_angle_RBV", kind="config", auto_monitor=True - ) - high_lim = Cpt( - EpicsSignalRO, suffix="hi_lim_pos_angle_RBV", kind="config", auto_monitor=True - ) \ No newline at end of file + readback = Cpt(EpicsSignalRO, suffix="feedback_pos_angle_RBV", kind="normal", auto_monitor=True) + setpoint = Cpt(EpicsSignalWithRBV, suffix="set_abs_pos_angle", kind="normal", auto_monitor=True) + low_lim = Cpt(EpicsSignalRO, suffix="lo_lim_pos_angle_RBV", kind="config", auto_monitor=True) + high_lim = Cpt(EpicsSignalRO, suffix="hi_lim_pos_angle_RBV", kind="config", auto_monitor=True) + + @property + def egu(self) -> str: + """Return the engineering unit of the positioner.""" + return "deg" diff --git a/debye_bec/scans/mono_bragg_scans.py b/debye_bec/scans/mono_bragg_scans.py index e1ac5b6..1dc131b 100644 --- a/debye_bec/scans/mono_bragg_scans.py +++ b/debye_bec/scans/mono_bragg_scans.py @@ -72,8 +72,7 @@ class XASSimpleScan(AsyncFlyScanBase): yield None def pre_scan(self): - """Pre Scan action. - """ + """Pre Scan action.""" self._check_limits() # Ensure parent class pre_scan actions to be called. diff --git a/tests/tests_devices/test_mo1_bragg.py b/tests/tests_devices/test_mo1_bragg.py index 534bead..933ad05 100644 --- a/tests/tests_devices/test_mo1_bragg.py +++ b/tests/tests_devices/test_mo1_bragg.py @@ -52,7 +52,6 @@ def test_init(mock_bragg): dev = mock_bragg assert dev.name == "bragg" assert dev.prefix == "X01DA-OP-MO1:BRAGG:" - assert dev.move_type.get() == MoveType.ENERGY assert dev.crystal.offset_si111._read_pvname == "X01DA-OP-MO1:BRAGG:offset_si111_RBV" assert dev.move_abs._read_pvname == "X01DA-OP-MO1:BRAGG:move_abs" @@ -61,29 +60,15 @@ def test_check_value(mock_bragg): dev = mock_bragg dev.low_lim._read_pv.mock_data = 0 dev.high_lim._read_pv.mock_data = 1 - dev.low_limit_angle._read_pv.mock_data = 10 - dev.high_limit_angle._read_pv.mock_data = 20 - # Check that limits are taken correctly from angle or energy - # Energy first - move_type = MoveType.ENERGY - dev.move_type.set(move_type) # nothing happens dev.check_value(0.5) with pytest.raises(LimitError): dev.check_value(15) - # Angle next - move_type = MoveType.ANGLE - dev.move_type.set(move_type) - dev.check_value(15) - with pytest.raises(LimitError): - dev.check_value(0.5) def test_egu(mock_bragg): dev = mock_bragg assert dev.egu == "eV" - dev.move_type.set(MoveType.ANGLE) - assert dev.egu == "deg" def test_move_succeeds(mock_bragg): @@ -135,16 +120,10 @@ def test_set_xtal(mock_bragg): def test_set_xas_settings(mock_bragg): dev = mock_bragg - dev.move_type.set(MoveType.ENERGY) dev.set_xas_settings(low=0.5, high=1, scan_time=0.1) assert dev.scan_settings.s_scan_energy_lo.get() == 0.5 assert dev.scan_settings.s_scan_energy_hi.get() == 1 assert dev.scan_settings.s_scan_scantime.get() == 0.1 - dev.move_type.set(MoveType.ANGLE) - dev.set_xas_settings(low=10, high=20, scan_time=1) - assert dev.scan_settings.s_scan_angle_lo.get() == 10 - assert dev.scan_settings.s_scan_angle_hi.get() == 20 - assert dev.scan_settings.s_scan_scantime.get() == 1 def test_set_trig_settings(mock_bragg): diff --git a/tests/tests_scans/test_mono_bragg_scans.py b/tests/tests_scans/test_mono_bragg_scans.py index 51ad94f..52dec76 100644 --- a/tests/tests_scans/test_mono_bragg_scans.py +++ b/tests/tests_scans/test_mono_bragg_scans.py @@ -92,18 +92,6 @@ def test_xas_simple_scan(scan_assembler, ScanStubStatusMock): action="read", parameter={}, ), - DeviceInstructionMessage( - metadata={"readout_priority": "monitored", "RID": "my_test_request_id"}, - device="mo1_bragg", - action="rpc", - parameter={ - "device": "mo1_bragg", - "func": "move_type.set", - "rpc_id": "my_test_rpc_id", - "args": ("energy",), - "kwargs": {}, - }, - ), DeviceInstructionMessage( metadata={"readout_priority": "monitored", "RID": "my_test_request_id"}, device=["bpm4i", "eiger", "mo1_bragg", "nidaq", "samx"], @@ -205,18 +193,6 @@ def test_xas_simple_scan_with_xrd(scan_assembler, ScanStubStatusMock): action="read", parameter={}, ), - DeviceInstructionMessage( - metadata={"readout_priority": "monitored", "RID": "my_test_request_id"}, - device="mo1_bragg", - action="rpc", - parameter={ - "device": "mo1_bragg", - "func": "move_type.set", - "rpc_id": "my_test_rpc_id", - "args": ("energy",), - "kwargs": {}, - }, - ), DeviceInstructionMessage( metadata={"readout_priority": "monitored", "RID": "my_test_request_id"}, device=["bpm4i", "eiger", "mo1_bragg", "nidaq", "samx"], @@ -312,18 +288,6 @@ def test_xas_advanced_scan(scan_assembler, ScanStubStatusMock): action="read", parameter={}, ), - DeviceInstructionMessage( - metadata={"readout_priority": "monitored", "RID": "my_test_request_id"}, - device="mo1_bragg", - action="rpc", - parameter={ - "device": "mo1_bragg", - "func": "move_type.set", - "rpc_id": "my_test_rpc_id", - "args": ("energy",), - "kwargs": {}, - }, - ), DeviceInstructionMessage( metadata={"readout_priority": "monitored", "RID": "my_test_request_id"}, device=["bpm4i", "eiger", "mo1_bragg", "nidaq", "samx"], @@ -427,18 +391,6 @@ def test_xas_advanced_scan_with_xrd(scan_assembler, ScanStubStatusMock): action="read", parameter={}, ), - DeviceInstructionMessage( - metadata={"readout_priority": "monitored", "RID": "my_test_request_id"}, - device="mo1_bragg", - action="rpc", - parameter={ - "device": "mo1_bragg", - "func": "move_type.set", - "rpc_id": "my_test_rpc_id", - "args": ("energy",), - "kwargs": {}, - }, - ), DeviceInstructionMessage( metadata={"readout_priority": "monitored", "RID": "my_test_request_id"}, device=["bpm4i", "eiger", "mo1_bragg", "nidaq", "samx"],