tests: fixed tellupdater and workflows tests
Build and Publish / test (push) Successful in 1m39s
Build and Publish / build (push) Successful in 18s
Build and Publish / Build and Deploy Docs (push) Successful in 37s

This commit is contained in:
2026-05-20 15:15:02 +02:00
parent b744fce6de
commit f77faef534
2 changed files with 25 additions and 23 deletions
+19 -18
View File
@@ -5,28 +5,29 @@ from aare.daq import tellupdater
def test_compare_and_report_change():
class MockPuck:
def __init__(self, id, pos):
self.id = id
def __init__(self, puck_name, dewar_id, pos):
self.puck_name = puck_name
self.dewar_id = dewar_id
self.tell_position = pos
old = [MockPuck("1", "A1"), MockPuck("2", "A2")]
new = [MockPuck("2", "A2"), MockPuck("3", "A3")]
joined, left = tellupdater.compare_and_report_change(old, new, lambda p: p.id)
assert joined == {"3"}
assert left == {"1"}
old = [MockPuck("p1", 1, "A1"), MockPuck("p2", 1, "A2")]
new = [MockPuck("p2", 1, "A2"), MockPuck("p3", 1, "A3")]
joined, left = tellupdater.compare_and_report_change(old, new)
assert joined == {("p3", 1, "A3")}
assert left == {("p1", 1, "A1")}
def test_compare_and_report_change_ignore_x1():
class MockPuck:
def __init__(self, id, pos):
self.id = id
def __init__(self, puck_name, dewar_id, pos):
self.puck_name = puck_name
self.dewar_id = dewar_id
self.tell_position = pos
old = [MockPuck("1", "X1")]
new = [MockPuck("2", "X1")]
# X1 should be ignored, so both lists look empty
joined, left = tellupdater.compare_and_report_change(old, new, lambda p: p.id)
old = [MockPuck("p1", 1, "X1")]
new = [MockPuck("p2", 1, "X1")]
joined, left = tellupdater.compare_and_report_change(old, new)
assert joined == set()
assert left == set()
@@ -140,7 +141,7 @@ def test_on_message_logs_json_decode_error():
tellupdater.on_message(None, "{invalid")
mock_exception.assert_called_once_with(
"[WS] Failed to decode websocket message as JSON"
"[WS] Failed to process message"
)
@patch("aare.daq.tellupdater.tell_client")
+6 -5
View File
@@ -19,6 +19,7 @@ def mock_devs():
def mock_cfg():
cfg = MagicMock()
cfg.abr_meas_pos = "MEAS_POS"
cfg.dtz = None
return cfg
def test_move_bsz_no_move(mock_devs):
@@ -70,19 +71,18 @@ def test_sa2se(mock_devs, mock_cfg):
def test_sa2rse(mock_devs, mock_cfg):
sa2rse(mock_devs, mock_cfg)
mock_devs.samcam_auto.assert_any_call(AutoEnum.AUTO)
mock_devs.samcam_auto.assert_any_call(AutoEnum.ONCE)
mock_devs.smargon_move_home.assert_called_once()
def test_sa2xtal_snapshot(mock_devs, mock_cfg):
mock_devs.bec_worker = MagicMock()
sa2xtal_snapshot(mock_devs, mock_cfg)
assert mock_devs.samcam_settings.exposure == 0.001
assert mock_devs.samcam_settings.exposure == 0.0005
mock_devs.bec_worker.planner.move_to.assert_called_with(BeamlineState.XTAL_SNAPSHOT)
def test_dc2xtal_snapshot(mock_devs, mock_cfg):
mock_devs.bec_worker = MagicMock()
dc2xtal_snapshot(mock_devs, mock_cfg)
assert mock_devs.samcam_settings.exposure == 0.001
assert mock_devs.samcam_settings.exposure == 0.0005
mock_devs.bec_worker.planner.move_to.assert_called_with(BeamlineState.XTAL_SNAPSHOT)
def test_xtal_snapshot2dc(mock_devs, mock_cfg):
@@ -97,7 +97,7 @@ def test_xtal_snapshot2sa(mock_devs, mock_cfg):
def test_dc2rse(mock_devs, mock_cfg):
dc2rse(mock_devs, mock_cfg)
mock_devs.samcam_auto.assert_any_call(AutoEnum.AUTO)
mock_devs.smargon_move_home.assert_called_once()
def test_se2sa(mock_devs, mock_cfg):
mock_devs.bec_worker = MagicMock()
@@ -112,6 +112,7 @@ def test_sa2dc(mock_devs, mock_cfg):
def test_dc2sa(mock_devs, mock_cfg):
mock_devs.bec_worker = MagicMock()
mock_cfg.dtz = None
dc2sa(mock_devs, mock_cfg)
mock_devs.bec_worker.planner.move_to.assert_called_with(BeamlineState.SAMPLE_ALIGNMENT)
assert mock_devs.aerotech_pos == mock_cfg.abr_meas_pos