mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2026-07-01 06:34:35 +02:00
more intuitive and doc
This commit is contained in:
@@ -11,9 +11,8 @@ from utils_for_test import (
|
||||
LogLevel,
|
||||
)
|
||||
from slsdet import Detector
|
||||
|
||||
from slsdet._slsdet import slsDetectorDefs
|
||||
|
||||
from slsdet.utils import all_equal, element_if_equal
|
||||
detectorType = slsDetectorDefs.detectorType
|
||||
|
||||
|
||||
@@ -931,61 +930,72 @@ def test_udp_datastream(session_simulator, request):
|
||||
from slsdet import portPosition
|
||||
|
||||
if det_type in ['eiger']:
|
||||
prev = d.udp_datastream
|
||||
assert all(isinstance(v, bool) for v in prev.values())
|
||||
ports = [portPosition.LEFT, portPosition.RIGHT]
|
||||
prev = [d.getUDPDataStream(i) for i in ports]
|
||||
# ensure all equal for each value in prev
|
||||
assert all_equal(prev)
|
||||
prev_val = [element_if_equal(v) for v in prev]
|
||||
|
||||
#list
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
d.udp_datastream = (portPosition.LEFT, [True, False]) #list
|
||||
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
d.udp_datastream = (portPosition.TOP, True) # invalid port position
|
||||
d.udp_datastream = (ports[0], [True, False])
|
||||
|
||||
# invalid port position
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
d.udp_datastream = (portPosition.BOTTOM, True) # invalid port position
|
||||
|
||||
d.udp_datastream = (portPosition.TOP, True)
|
||||
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
d.udp_datastream = True # without port position
|
||||
d.udp_datastream = (portPosition.BOTTOM, True)
|
||||
|
||||
d.udp_datastream = (portPosition.LEFT, False)
|
||||
assert d.udp_datastream[portPosition.LEFT] is False
|
||||
d.udp_datastream = (portPosition.RIGHT, False)
|
||||
assert d.udp_datastream[portPosition.RIGHT] is False
|
||||
d.udp_datastream = (portPosition.LEFT, True)
|
||||
assert d.udp_datastream[portPosition.LEFT] is True
|
||||
d.udp_datastream = (portPosition.RIGHT, True)
|
||||
assert d.udp_datastream[portPosition.RIGHT] is True
|
||||
# without port position
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
d.udp_datastream = True
|
||||
|
||||
d.setUDPDataStream(portPosition.LEFT, prev[portPosition.LEFT])
|
||||
d.setUDPDataStream(portPosition.RIGHT, prev[portPosition.RIGHT])
|
||||
d.udp_datastream = (ports[0], False)
|
||||
assert d.udp_datastream[ports[0]] is False
|
||||
d.udp_datastream = (ports[1], False)
|
||||
assert d.udp_datastream[ports[1]] is False
|
||||
d.udp_datastream = (ports[0], True)
|
||||
assert d.udp_datastream[ports[0]] is True
|
||||
d.udp_datastream = (ports[1], True)
|
||||
assert d.udp_datastream[ports[1]] is True
|
||||
|
||||
d.setUDPDataStream(ports[0], element_if_equal(prev[0]))
|
||||
d.setUDPDataStream(ports[1], element_if_equal(prev[1]))
|
||||
|
||||
elif det_type in ['jungfrau', 'moench'] and num_interfaces == 2:
|
||||
prev = d.udp_datastream
|
||||
assert all(isinstance(v, bool) for v in prev.values())
|
||||
ports = [portPosition.TOP, portPosition.BOTTOM]
|
||||
prev = [d.getUDPDataStream(i) for i in ports]
|
||||
# ensure all equal for each value in prev
|
||||
assert all_equal(prev)
|
||||
prev_val = [element_if_equal(v) for v in prev]
|
||||
|
||||
|
||||
#list
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
d.udp_datastream = (portPosition.TOP, [True, False]) #list
|
||||
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
d.udp_datastream = (portPosition.LEFT, True) # invalid port position
|
||||
d.udp_datastream = (ports[0], [True, False])
|
||||
|
||||
# invalid port position
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
d.udp_datastream = (portPosition.RIGHT, True) # invalid port position
|
||||
|
||||
d.udp_datastream = (portPosition.LEFT, True)
|
||||
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
d.udp_datastream = True # without port position
|
||||
d.udp_datastream = (portPosition.RIGHT, True)
|
||||
|
||||
d.udp_datastream = (portPosition.TOP, False)
|
||||
assert d.udp_datastream[portPosition.TOP] is False
|
||||
d.udp_datastream = (portPosition.BOTTOM, False)
|
||||
assert d.udp_datastream[portPosition.BOTTOM] is False
|
||||
d.udp_datastream = (portPosition.TOP, True)
|
||||
assert d.udp_datastream[portPosition.TOP] is True
|
||||
d.udp_datastream = (portPosition.BOTTOM, True)
|
||||
assert d.udp_datastream[portPosition.BOTTOM] is True
|
||||
# without port position
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
d.udp_datastream = True
|
||||
|
||||
d.setUDPDataStream(portPosition.TOP, prev[portPosition.TOP])
|
||||
d.setUDPDataStream(portPosition.BOTTOM, prev[portPosition.BOTTOM])
|
||||
d.udp_datastream = (ports[0], False)
|
||||
assert d.udp_datastream[ports[0]] is False
|
||||
d.udp_datastream = (ports[1], False)
|
||||
assert d.udp_datastream[ports[1]] is False
|
||||
d.udp_datastream = (ports[0], True)
|
||||
assert d.udp_datastream[ports[0]] is True
|
||||
d.udp_datastream = (ports[1], True)
|
||||
assert d.udp_datastream[ports[1]] is True
|
||||
|
||||
d.setUDPDataStream(ports[0], element_if_equal(prev[0]))
|
||||
d.setUDPDataStream(ports[1], element_if_equal(prev[1]))
|
||||
|
||||
else:
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
|
||||
Reference in New Issue
Block a user