Skip to content
This repository has been archived by the owner on Sep 2, 2024. It is now read-only.

Commit

Permalink
(#770) Patch omega set in conftest
Browse files Browse the repository at this point in the history
  • Loading branch information
DominicOram committed Jul 13, 2023
1 parent f8cb2d0 commit bd12851
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 18 deletions.
9 changes: 8 additions & 1 deletion src/artemis/experiment_plans/tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
from bluesky.run_engine import RunEngine
from dodal.beamlines import i03
from dodal.devices.aperturescatterguard import AperturePositions
from ophyd.status import Status

from artemis.experiment_plans.fast_grid_scan_plan import FGSComposite
from artemis.external_interaction.callbacks.fgs.fgs_callback_collection import (
Expand Down Expand Up @@ -50,7 +51,13 @@ def smargon():
smargon.y.user_setpoint._use_limits = False
smargon.z.user_setpoint._use_limits = False
smargon.omega.user_setpoint._use_limits = False
return smargon

def mock_omega_set(val):
smargon.omega.user_readback.sim_put(val)
return Status(done=True, success=True)

with patch.object(smargon.omega, "set", mock_omega_set):
yield smargon


@pytest.fixture
Expand Down
26 changes: 9 additions & 17 deletions src/artemis/experiment_plans/tests/test_rotation_scan_plan.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,13 +30,11 @@
def test_move_to_start(smargon: Smargon, RE):
start_angle = 153
mock_velocity_set = MagicMock(return_value=Status(done=True, success=True))
mock_omega_set = MagicMock(return_value=Status(done=True, success=True))
with patch.object(smargon.omega.velocity, "set", mock_velocity_set):
with patch.object(smargon.omega, "set", mock_omega_set):
RE(move_to_start_w_buffer(smargon.omega, start_angle))
RE(move_to_start_w_buffer(smargon.omega, start_angle))

mock_velocity_set.assert_called_with(120)
mock_omega_set.assert_called_with(start_angle - OFFSET * DIRECTION)
assert smargon.omega.user_readback.get() == start_angle - OFFSET * DIRECTION


def __fake_read(obj, initial_positions, _):
Expand All @@ -46,16 +44,13 @@ def __fake_read(obj, initial_positions, _):

def test_move_to_end(smargon: Smargon, RE):
scan_width = 153
mock_omega_set = MagicMock(return_value=Status(done=True, success=True))

with patch.object(smargon.omega, "set", mock_omega_set):
with patch(
"bluesky.preprocessors.__read_and_stash_a_motor",
__fake_read,
):
RE(move_to_end_w_buffer(smargon.omega, scan_width))
with patch(
"bluesky.preprocessors.__read_and_stash_a_motor",
__fake_read,
):
RE(move_to_end_w_buffer(smargon.omega, scan_width))

mock_omega_set.assert_called_with((scan_width + 0.1 + OFFSET) * DIRECTION)
assert smargon.omega.user_readback.get() == (scan_width + 0.1 + OFFSET) * DIRECTION


@patch("dodal.beamlines.beamline_utils.active_device_is_same_type", lambda a, b: True)
Expand Down Expand Up @@ -116,10 +111,7 @@ def test_rotation_plan(
smargon.omega.velocity.set = mock_omega_sets
smargon.omega.set = mock_omega_sets

with patch(
"bluesky.preprocessors.__read_and_stash_a_motor",
__fake_read,
), patch(
with patch("bluesky.preprocessors.__read_and_stash_a_motor", __fake_read,), patch(
"artemis.experiment_plans.rotation_scan_plan.RotationCallbackCollection.from_params",
lambda _: mock_rotation_subscriptions,
):
Expand Down

0 comments on commit bd12851

Please sign in to comment.