Skip to content

Commit

Permalink
Tests for unsupported configurations
Browse files Browse the repository at this point in the history
  • Loading branch information
DiamondJoseph committed Apr 11, 2024
1 parent 94ff518 commit 6673b8c
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ def _get_trigger_info(
else:
return (
ADAravisTriggerMode.on,
ADAravisTriggerSource(f"line_{self.gpio_number}"),
ADAravisTriggerSource[f"line_{self.gpio_number}"],
)

async def disarm(self):
Expand Down
35 changes: 32 additions & 3 deletions tests/epics/areadetector/test_aravis.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,14 @@
set_sim_value,
)
from ophyd_async.epics.areadetector.aravis import ADAravisDetector
from ophyd_async.epics.areadetector.controllers.aravis_controller import ADAravisController
from ophyd_async.epics.areadetector.drivers.aravis_driver import ADAravisDriver, ADAravisTriggerSource
from ophyd_async.epics.areadetector.controllers.aravis_controller import (
ADAravisController,
)
from ophyd_async.epics.areadetector.drivers.aravis_driver import (
ADAravisDriver,
ADAravisTriggerSource,
)


@pytest.fixture
async def adaravis_driver(RE: RunEngine) -> ADAravisDriver:
Expand Down Expand Up @@ -126,9 +132,32 @@ async def test_hints_from_hdf_writer(adaravis: ADAravisDetector):


async def test_unsupported_trigger_excepts(adaravis: ADAravisDetector):
set_sim_value(adaravis._controller._drv.model, "Manta G-125")
set_sim_value(adaravis._controller._drv.pixel_format, "Mono12Packed")

with pytest.raises(
ValueError,
# str(EnumClass.value) handling changed in Python 3.11
match=r"ADAravisController only supports the following trigger types: .* but",
):
await adaravis.prepare(TriggerInfo(1, DetectorTrigger.variable_gate, 1, 1))

async def test_unsupported_model_excepts(adaravis: ADAravisDetector):
set_sim_value(adaravis._controller._drv.model, "foo")
set_sim_value(adaravis._controller._drv.pixel_format, "bar")

with pytest.raises(
AssertionError,
match=r"Detector .* needs at least nans deadtime, but trigger logic provides",
):
await adaravis.prepare(TriggerInfo(1, DetectorTrigger.variable_gate, 1, 1))


async def test_unsupported_pixel_format_excepts(adaravis: ADAravisDetector):
set_sim_value(adaravis._controller._drv.model, "Manta G-235")
set_sim_value(adaravis._controller._drv.pixel_format, "bar")

with pytest.raises(
AssertionError,
match=r"Detector .* needs at least nans deadtime, but trigger logic provides",
):
await adaravis.prepare(TriggerInfo(1, DetectorTrigger.variable_gate, 1, 1))

0 comments on commit 6673b8c

Please sign in to comment.