Add failing unit test for sangaboard version before v1
This commit is contained in:
parent
70e052fa21
commit
797dda3514
2 changed files with 21 additions and 1 deletions
|
|
@ -44,12 +44,12 @@ class SangaboardThing(BaseStage):
|
||||||
"""
|
"""
|
||||||
self.sangaboard_kwargs = copy(kwargs)
|
self.sangaboard_kwargs = copy(kwargs)
|
||||||
self.sangaboard_kwargs["port"] = port
|
self.sangaboard_kwargs["port"] = port
|
||||||
|
self._sangaboard_lock = threading.RLock()
|
||||||
super().__init__(**kwargs)
|
super().__init__(**kwargs)
|
||||||
|
|
||||||
def __enter__(self) -> None:
|
def __enter__(self) -> None:
|
||||||
"""Connect to the sangaboard when the Thing context manager is opened."""
|
"""Connect to the sangaboard when the Thing context manager is opened."""
|
||||||
self._sangaboard = sangaboard.Sangaboard(**self.sangaboard_kwargs)
|
self._sangaboard = sangaboard.Sangaboard(**self.sangaboard_kwargs)
|
||||||
self._sangaboard_lock = threading.RLock()
|
|
||||||
with self.sangaboard() as sb:
|
with self.sangaboard() as sb:
|
||||||
sb.query("blocking_moves false")
|
sb.query("blocking_moves false")
|
||||||
self.check_firmware()
|
self.check_firmware()
|
||||||
|
|
|
||||||
20
tests/test_sangaboard.py
Normal file
20
tests/test_sangaboard.py
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
"""Tests for the Sangaboard thing."""
|
||||||
|
|
||||||
|
import pytest
|
||||||
|
|
||||||
|
from openflexure_microscope_server.things.stage.sangaboard import SangaboardThing
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def mock_sanga_thing(mocker):
|
||||||
|
"""Return a Sangaboard thing with a MagicMock for self._sangaboard."""
|
||||||
|
sanga_thing = SangaboardThing()
|
||||||
|
sanga_thing._sangaboard = mocker.MagicMock()
|
||||||
|
return sanga_thing
|
||||||
|
|
||||||
|
|
||||||
|
def test_check_old_firmware(mock_sanga_thing):
|
||||||
|
"""Check firmware prior to version 1 throws a Runtime Error."""
|
||||||
|
mock_sanga_thing._sangaboard.firmware_version.return_value = "0.1.1"
|
||||||
|
with pytest.raises(RuntimeError):
|
||||||
|
mock_sanga_thing.check_firmware()
|
||||||
Loading…
Add table
Add a link
Reference in a new issue