mirror of
https://github.com/ivan-usov-org/bec.git
synced 2025-04-22 02:20:02 +02:00
38 lines
1.1 KiB
Python
38 lines
1.1 KiB
Python
from unittest import mock
|
|
|
|
import pytest
|
|
from bec_utils import BECMessage
|
|
from bec_utils.tests.utils import ConnectorMock
|
|
from scan_server.scan_stubs import ScanStubs
|
|
|
|
|
|
@pytest.mark.parametrize(
|
|
"device,parameter,metadata,reference_msg",
|
|
[
|
|
(
|
|
"rtx",
|
|
None,
|
|
None,
|
|
BECMessage.DeviceInstructionMessage(
|
|
device="rtx", action="kickoff", parameter={}, metadata={}
|
|
),
|
|
),
|
|
(
|
|
"rtx",
|
|
{"num_pos": 5, "positions": [1, 2, 3, 4, 5], "exp_time": 2},
|
|
None,
|
|
BECMessage.DeviceInstructionMessage(
|
|
device="rtx",
|
|
action="kickoff",
|
|
parameter={"num_pos": 5, "positions": [1, 2, 3, 4, 5], "exp_time": 2},
|
|
metadata={},
|
|
),
|
|
),
|
|
],
|
|
)
|
|
def test_kickoff(device, parameter, metadata, reference_msg):
|
|
connector = ConnectorMock("")
|
|
stubs = ScanStubs(connector.producer())
|
|
msg = list(stubs.kickoff(device=device, parameter=parameter, metadata=metadata))
|
|
assert msg[0] == reference_msg
|