Table of Contents
Test Report
View CI Run 2160 | Commit d8ee50b
🧪 Test Report
Generated on 2025-08-12 16:57:44 CEST
🧾 General Info
- duration: 45.25055265426636
- root: /workspace/tligui_y/slic
- environment: {}
📋 Summary
- Passed: 18
- Failed: 7
- Total: 25
- Collected: 25
🔎 Tests
✅ Passed (18)
-
📄 test_utils_reprate.py
↳ Function: test_get_beamline
-
✅ Test 1
params: instrument="alvra", expected_beamline="aramis"📌 Runtime Parameters
params: instrument: alvra expected_beamline: aramis id: alvra-aramis📌 Setup phase
duration:
0.0006991219706833363outcome:
passed📌 Call phase
duration:
0.00017074402421712875outcome:
passed📌 Teardown phase
duration:
0.0002378537319600582outcome:
passed -
✅ Test 2
params: instrument="bernina", expected_beamline="aramis"📌 Runtime Parameters
params: instrument: bernina expected_beamline: aramis id: bernina-aramis📌 Setup phase
duration:
0.00022435327991843224outcome:
passed📌 Call phase
duration:
0.00014078104868531227outcome:
passed📌 Teardown phase
duration:
0.0001293560490012169outcome:
passed -
✅ Test 3
params: instrument="cristallina", expected_beamline="aramis"📌 Runtime Parameters
params: instrument: cristallina expected_beamline: aramis id: cristallina-aramis📌 Setup phase
duration:
0.00020011886954307556outcome:
passed📌 Call phase
duration:
0.00013721222057938576outcome:
passed📌 Teardown phase
duration:
0.00012502819299697876outcome:
passed -
✅ Test 4
params: instrument="diavolezza", expected_beamline="athos"📌 Runtime Parameters
params: instrument: diavolezza expected_beamline: athos id: diavolezza-athos📌 Setup phase
duration:
0.0002075466327369213outcome:
passed📌 Call phase
duration:
0.00013267016038298607outcome:
passed📌 Teardown phase
duration:
0.00012606242671608925outcome:
passed -
✅ Test 5
params: instrument="maloja", expected_beamline="athos"📌 Runtime Parameters
params: instrument: maloja expected_beamline: athos id: maloja-athos📌 Setup phase
duration:
0.00019579939544200897outcome:
passed📌 Call phase
duration:
0.00013789022341370583outcome:
passed📌 Teardown phase
duration:
0.00012844009324908257outcome:
passed -
✅ Test 6
params: instrument="furka", expected_beamline="athos"📌 Runtime Parameters
params: instrument: furka expected_beamline: athos id: furka-athos📌 Setup phase
duration:
0.00020122993737459183outcome:
passed📌 Call phase
duration:
0.000144170131534338outcome:
passed📌 Teardown phase
duration:
0.00012356415390968323outcome:
passed
↳ Function: test_infer_beamline_from_ip
-
✅ Test 8
params: ip="129.129.242", expected_instrument="alvra"📌 Runtime Parameters
params: ip: 129.129.242 expected_instrument: alvra id: 129.129.242-alvra📌 Setup phase
duration:
0.00029164645820856094outcome:
passed📌 Call phase
duration:
0.0009256270714104176outcome:
passed📌 Teardown phase
duration:
0.0001930580474436283outcome:
passed -
✅ Test 9
params: ip="129.129.243", expected_instrument="bernina"📌 Runtime Parameters
params: ip: 129.129.243 expected_instrument: bernina id: 129.129.243-bernina📌 Setup phase
duration:
0.00023877806961536407outcome:
passed📌 Call phase
duration:
0.0009349137544631958outcome:
passed📌 Teardown phase
duration:
0.0001784786581993103outcome:
passed -
✅ Test 10
params: ip="129.129.244", expected_instrument="cristallina"📌 Runtime Parameters
params: ip: 129.129.244 expected_instrument: cristallina id: 129.129.244-cristallina📌 Setup phase
duration:
0.0002294713631272316outcome:
passed📌 Call phase
duration:
0.0008003110997378826outcome:
passed📌 Teardown phase
duration:
0.00015252316370606422outcome:
passed -
✅ Test 11
params: ip="129.129.245", expected_instrument="diavolezza"📌 Runtime Parameters
params: ip: 129.129.245 expected_instrument: diavolezza id: 129.129.245-diavolezza📌 Setup phase
duration:
0.00022909976541996002outcome:
passed📌 Call phase
duration:
0.0008713477291166782outcome:
passed📌 Teardown phase
duration:
0.00015792623162269592outcome:
passed -
✅ Test 12
params: ip="129.129.246", expected_instrument="maloja"📌 Runtime Parameters
params: ip: 129.129.246 expected_instrument: maloja id: 129.129.246-maloja📌 Setup phase
duration:
0.0002543278969824314outcome:
passed📌 Call phase
duration:
0.0008785240352153778outcome:
passed📌 Teardown phase
duration:
0.00023095495998859406outcome:
passed -
✅ Test 13
params: ip="129.129.247", expected_instrument="furka"📌 Runtime Parameters
params: ip: 129.129.247 expected_instrument: furka id: 129.129.247-furka📌 Setup phase
duration:
0.00024754414334893227outcome:
passed📌 Call phase
duration:
0.0009344150312244892outcome:
passed📌 Teardown phase
duration:
0.00024783099070191383outcome:
passed
↳ Function: test_get_pvname_reprate_with_instrument_and_beamline
-
✅ Test 14
params: instrument="alvra", beamline="aramis", pvname="SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB"📌 Runtime Parameters
params: instrument: alvra beamline: aramis pvname: SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB id: alvra-aramis-SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB📌 Setup phase
duration:
0.0002780999056994915outcome:
passed📌 Call phase
duration:
0.00014235079288482666outcome:
passed📌 Teardown phase
duration:
0.0001572808250784874outcome:
passed -
✅ Test 15
params: instrument="bernina", beamline="aramis", pvname="SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB"📌 Runtime Parameters
params: instrument: bernina beamline: aramis pvname: SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB id: bernina-aramis-SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB📌 Setup phase
duration:
0.00024537229910492897outcome:
passed📌 Call phase
duration:
0.00014458689838647842outcome:
passed📌 Teardown phase
duration:
0.00015116389840841293outcome:
passed -
✅ Test 16
params: instrument="cristallina", beamline="aramis", pvname="SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB"📌 Runtime Parameters
params: instrument: cristallina beamline: aramis pvname: SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB id: cristallina-aramis-SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB📌 Setup phase
duration:
0.0002516261301934719outcome:
passed📌 Call phase
duration:
0.00017159478738904outcome:
passed📌 Teardown phase
duration:
0.0001514921896159649outcome:
passed -
✅ Test 17
params: instrument="diavolezza", beamline="athos", pvname="SIN-TIMAST-TMA:Bunch-2-Exp-Freq-RB"📌 Runtime Parameters
params: instrument: diavolezza beamline: athos pvname: SIN-TIMAST-TMA:Bunch-2-Exp-Freq-RB id: diavolezza-athos-SIN-TIMAST-TMA:Bunch-2-Exp-Freq-RB📌 Setup phase
duration:
0.00043696071952581406outcome:
passed📌 Call phase
duration:
0.00023657642304897308outcome:
passed📌 Teardown phase
duration:
0.0002515590749680996outcome:
passed -
✅ Test 18
params: instrument="maloja", beamline="athos", pvname="SIN-TIMAST-TMA:Bunch-2-Exp-Freq-RB"📌 Runtime Parameters
params: instrument: maloja beamline: athos pvname: SIN-TIMAST-TMA:Bunch-2-Exp-Freq-RB id: maloja-athos-SIN-TIMAST-TMA:Bunch-2-Exp-Freq-RB📌 Setup phase
duration:
0.00026938412338495255outcome:
passed📌 Call phase
duration:
0.000147250946611166outcome:
passed📌 Teardown phase
duration:
0.00014251144602894783outcome:
passed -
✅ Test 19
params: instrument="furka", beamline="athos", pvname="SIN-TIMAST-TMA:Bunch-2-Exp-Freq-RB"📌 Runtime Parameters
params: instrument: furka beamline: athos pvname: SIN-TIMAST-TMA:Bunch-2-Exp-Freq-RB id: furka-athos-SIN-TIMAST-TMA:Bunch-2-Exp-Freq-RB📌 Setup phase
duration:
0.0002530999481678009outcome:
passed📌 Call phase
duration:
0.00014344556257128716outcome:
passed📌 Teardown phase
duration:
0.00013825483620166779outcome:
passed
-
❌ Failed (7)
-
📄 test_utils_reprate.py
↳ Function: test_get_pvname_reprate_for_inferred_beamline
-
❌ Test 7
📌 Setup phase
duration:
0.00010231323540210724outcome:
passed📌 Call phase
duration:
0.001471501775085926outcome:
failedcrash:
path: /workspace/tligui_y/slic/tests/test_utils_reprate.py lineno: 27 message: AssertionError: Expected 'SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB', but got None assert None == 'SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB'traceback:
- path: tests/test_utils_reprate.py lineno: 27 message: AssertionErrorlongrepr:
def test_get_pvname_reprate_for_inferred_beamline(): """Test the PV name retrieval when using inferred beamline based on IP address.""" # Mock the socket to simulate an IP address with patch("socket.gethostname", return_value="testhost"), patch("socket.gethostbyname", return_value="129.129.242"): beamline = infer_beamline() pvname = get_pvname_reprate(instrument=None, beamline=beamline) > assert pvname == BEAMLINE_TO_PVNAME_REPRATE["aramis"], f"Expected 'SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB', but got {pvname}" E AssertionError: Expected 'SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB', but got None E assert None == 'SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB' tests/test_utils_reprate.py:27: AssertionError📌 Teardown phase
duration:
0.00022088410332798958outcome:
passed
↳ Function: test_invalid_instrument_or_beamline
-
❌ Test 20
📌 Setup phase
duration:
0.00010321009904146194outcome:
passed📌 Call phase
duration:
0.0003101262263953686outcome:
failedcrash:
path: /workspace/tligui_y/slic/slic/utils/reprate.py lineno: 70 message: AttributeError: 'NoneType' object has no attribute 'capitalize'traceback:
- path: tests/test_utils_reprate.py lineno: 60 message: None - path: slic/utils/reprate.py lineno: 70 message: AttributeErrorlongrepr:
def test_invalid_instrument_or_beamline(): """Test that None is returned when an invalid instrument or beamline is provided.""" # Invalid instrument > monitor = RepRateMonitor(target="invalid_instrument") tests/test_utils_reprate.py:60: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <[AttributeError("'RepRateMonitor' object has no attribute 'name'") raised in repr()] RepRateMonitor object at 0x7f0017ea3eb0> target = 'invalid_instrument' def __init__(self, target=None): if target is not None: target = target.lower() instrument = target if target in INSTRUMENTS else None beamline = target if target in BEAMLINES else None if beamline is None: beamline = get_beamline(instrument) pvname = get_pvname_reprate(instrument, beamline) > beamline = beamline.capitalize() E AttributeError: 'NoneType' object has no attribute 'capitalize' slic/utils/reprate.py:70: AttributeError📌 Teardown phase
duration:
0.00018585287034511566outcome:
passed
↳ Function: test_monitor_value_update
-
❌ Test 21
📌 Setup phase
duration:
0.00014176871627569199outcome:
passed📌 Call phase
duration:
20.1252394169569outcome:
failedcrash:
path: /workspace/tligui_y/slic/tests/test_utils_reprate.py lineno: 72 message: AssertionError: Expected 20.0, but got None assert None == 20.0 + where None = Aramis Rep. Rate: None None.valuetraceback:
- path: tests/test_utils_reprate.py lineno: 72 message: AssertionErrorlongrepr:
def test_monitor_value_update(): #Test that the RepRateMonitor correctly updates its value and units monitor = RepRateMonitor("alvra") # Example instrument # Check that the initial value is 20.0 and the units are correct > assert monitor.value == 20.0, f"Expected 20.0, but got {monitor.value}" E AssertionError: Expected 20.0, but got None E assert None == 20.0 E + where None = Aramis Rep. Rate: None None.value tests/test_utils_reprate.py:72: AssertionError📌 Teardown phase
duration:
0.0004710541106760502outcome:
passed
↳ Function: test_repr_method_with_initial_values
-
❌ Test 22
📌 Setup phase
duration:
0.0002716849558055401outcome:
passed📌 Call phase
duration:
20.00163291208446outcome:
failedcrash:
path: /workspace/tligui_y/slic/tests/test_utils_reprate.py lineno: 99 message: AssertionError: Expected 'Aramis Rep. Rate: 20.0 Hz', but got 'Aramis Rep. Rate: None None' assert 'Aramis Rep. Rate: None None' == 'Aramis Rep. Rate: 20.0 Hz' - Aramis Rep. Rate: 20.0 Hz + Aramis Rep. Rate: None Nonetraceback:
- path: tests/test_utils_reprate.py lineno: 99 message: AssertionErrorlongrepr:
def test_repr_method_with_initial_values(): # Test __repr__ monitor = RepRateMonitor("alvra") # Expected initial values expected_name = "Aramis Rep. Rate" expected_value = 20.0 expected_units = "Hz" # Expected representation expected_repr = f"{expected_name}: {expected_value} {expected_units}" # Check that the __repr__ method returns the expected string > assert repr(monitor) == expected_repr, f"Expected '{expected_repr}', but got '{repr(monitor)}'" E AssertionError: Expected 'Aramis Rep. Rate: 20.0 Hz', but got 'Aramis Rep. Rate: None None' E assert 'Aramis Rep. Rate: None None' == 'Aramis Rep. Rate: 20.0 Hz' E E - Aramis Rep. Rate: 20.0 Hz E + Aramis Rep. Rate: None None tests/test_utils_reprate.py:99: AssertionError📌 Teardown phase
duration:
0.0002155727706849575outcome:
passed
↳ Function: test_invalid_target_handling
-
❌ Test 23
params: invalid_target="invalid_instrument"📌 Runtime Parameters
params: invalid_target: invalid_instrument id: invalid_instrument📌 Setup phase
duration:
0.00041214795783162117outcome:
passed📌 Call phase
duration:
0.0003732070326805115outcome:
failedcrash:
path: /workspace/tligui_y/slic/slic/utils/reprate.py lineno: 70 message: AttributeError: 'NoneType' object has no attribute 'capitalize'traceback:
- path: tests/test_utils_reprate.py lineno: 108 message: None - path: slic/utils/reprate.py lineno: 70 message: AttributeErrorlongrepr:
invalid_target = 'invalid_instrument' @pytest.mark.parametrize("invalid_target", [ "invalid_instrument", # Non-existent instrument "non_existing_beamline" # Non-existent beamline ]) def test_invalid_target_handling(invalid_target): # Test that an invalid target correctly results in None for PV name.""" > monitor = RepRateMonitor(invalid_target) tests/test_utils_reprate.py:108: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <[AttributeError("'RepRateMonitor' object has no attribute 'name'") raised in repr()] RepRateMonitor object at 0x7efffbc10430> target = 'invalid_instrument' def __init__(self, target=None): if target is not None: target = target.lower() instrument = target if target in INSTRUMENTS else None beamline = target if target in BEAMLINES else None if beamline is None: beamline = get_beamline(instrument) pvname = get_pvname_reprate(instrument, beamline) > beamline = beamline.capitalize() E AttributeError: 'NoneType' object has no attribute 'capitalize' slic/utils/reprate.py:70: AttributeError📌 Teardown phase
duration:
0.00021838117390871048outcome:
passed -
❌ Test 24
params: invalid_target="non_existing_beamline"📌 Runtime Parameters
params: invalid_target: non_existing_beamline id: non_existing_beamline📌 Setup phase
duration:
0.00022289296612143517outcome:
passed📌 Call phase
duration:
0.00026517920196056366outcome:
failedcrash:
path: /workspace/tligui_y/slic/slic/utils/reprate.py lineno: 70 message: AttributeError: 'NoneType' object has no attribute 'capitalize'traceback:
- path: tests/test_utils_reprate.py lineno: 108 message: None - path: slic/utils/reprate.py lineno: 70 message: AttributeErrorlongrepr:
invalid_target = 'non_existing_beamline' @pytest.mark.parametrize("invalid_target", [ "invalid_instrument", # Non-existent instrument "non_existing_beamline" # Non-existent beamline ]) def test_invalid_target_handling(invalid_target): # Test that an invalid target correctly results in None for PV name.""" > monitor = RepRateMonitor(invalid_target) tests/test_utils_reprate.py:108: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <[AttributeError("'RepRateMonitor' object has no attribute 'name'") raised in repr()] RepRateMonitor object at 0x7f00183c5670> target = 'non_existing_beamline' def __init__(self, target=None): if target is not None: target = target.lower() instrument = target if target in INSTRUMENTS else None beamline = target if target in BEAMLINES else None if beamline is None: beamline = get_beamline(instrument) pvname = get_pvname_reprate(instrument, beamline) > beamline = beamline.capitalize() E AttributeError: 'NoneType' object has no attribute 'capitalize' slic/utils/reprate.py:70: AttributeError📌 Teardown phase
duration:
0.00018644612282514572outcome:
passed
↳ Function: test_retrieve_pvname_for_none_instrument_and_beamline
-
❌ Test 25
📌 Setup phase
duration:
0.00012833811342716217outcome:
passed📌 Call phase
duration:
0.0002484861761331558outcome:
failedcrash:
path: /workspace/tligui_y/slic/slic/utils/reprate.py lineno: 70 message: AttributeError: 'NoneType' object has no attribute 'capitalize'traceback:
- path: tests/test_utils_reprate.py lineno: 115 message: None - path: slic/utils/reprate.py lineno: 70 message: AttributeErrorlongrepr:
def test_retrieve_pvname_for_none_instrument_and_beamline(): # Test that if both instrument and beamline are None, the method works correctly.""" > monitor = RepRateMonitor(target=None) tests/test_utils_reprate.py:115: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = <[AttributeError("'RepRateMonitor' object has no attribute 'name'") raised in repr()] RepRateMonitor object at 0x7f00183c2cd0> target = None def __init__(self, target=None): if target is not None: target = target.lower() instrument = target if target in INSTRUMENTS else None beamline = target if target in BEAMLINES else None if beamline is None: beamline = get_beamline(instrument) pvname = get_pvname_reprate(instrument, beamline) > beamline = beamline.capitalize() E AttributeError: 'NoneType' object has no attribute 'capitalize' slic/utils/reprate.py:70: AttributeError📌 Teardown phase
duration:
0.00023819785565137863outcome:
passed
-
📚 Collected files
✅ (1 tests)
-
✅
- Outcome:
passed - result:
- nodeid: tests/test_utils_reprate.py type: Module - Outcome:
✅ tests (1 tests)
-
✅ tests/test_utils_reprate.py
- Outcome:
passed - result:
- nodeid: tests/test_utils_reprate.py::test_get_beamline[alvra-aramis] type: Function lineno: 7 - nodeid: tests/test_utils_reprate.py::test_get_beamline[bernina-aramis] type: Function lineno: 7 - nodeid: tests/test_utils_reprate.py::test_get_beamline[cristallina-aramis] type: Function lineno: 7 - nodeid: tests/test_utils_reprate.py::test_get_beamline[diavolezza-athos] type: Function lineno: 7 - nodeid: tests/test_utils_reprate.py::test_get_beamline[maloja-athos] type: Function lineno: 7 - nodeid: tests/test_utils_reprate.py::test_get_beamline[furka-athos] type: Function lineno: 7 - nodeid: tests/test_utils_reprate.py::test_get_pvname_reprate_for_inferred_beamline type: Function lineno: 20 - nodeid: tests/test_utils_reprate.py::test_infer_beamline_from_ip[129.129.242-alvra] type: Function lineno: 28 - nodeid: tests/test_utils_reprate.py::test_infer_beamline_from_ip[129.129.243-bernina] type: Function lineno: 28 - nodeid: tests/test_utils_reprate.py::test_infer_beamline_from_ip[129.129.244-cristallina] type: Function lineno: 28 - nodeid: tests/test_utils_reprate.py::test_infer_beamline_from_ip[129.129.245-diavolezza] type: Function lineno: 28 - nodeid: tests/test_utils_reprate.py::test_infer_beamline_from_ip[129.129.246-maloja] type: Function lineno: 28 - nodeid: tests/test_utils_reprate.py::test_infer_beamline_from_ip[129.129.247-furka] type: Function lineno: 28 - nodeid: tests/test_utils_reprate.py::test_get_pvname_reprate_with_instrument_and_beamline[alvra-aramis-SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB] type: Function lineno: 43 - nodeid: tests/test_utils_reprate.py::test_get_pvname_reprate_with_instrument_and_beamline[bernina-aramis-SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB] type: Function lineno: 43 - nodeid: tests/test_utils_reprate.py::test_get_pvname_reprate_with_instrument_and_beamline[cristallina-aramis-SIN-TIMAST-TMA:Bunch-1-Exp-Freq-RB] type: Function lineno: 43 - nodeid: tests/test_utils_reprate.py::test_get_pvname_reprate_with_instrument_and_beamline[diavolezza-athos-SIN-TIMAST-TMA:Bunch-2-Exp-Freq-RB] type: Function lineno: 43 - nodeid: tests/test_utils_reprate.py::test_get_pvname_reprate_with_instrument_and_beamline[maloja-athos-SIN-TIMAST-TMA:Bunch-2-Exp-Freq-RB] type: Function lineno: 43 - nodeid: tests/test_utils_reprate.py::test_get_pvname_reprate_with_instrument_and_beamline[furka-athos-SIN-TIMAST-TMA:Bunch-2-Exp-Freq-RB] type: Function lineno: 43 - nodeid: tests/test_utils_reprate.py::test_invalid_instrument_or_beamline type: Function lineno: 56 - nodeid: tests/test_utils_reprate.py::test_monitor_value_update type: Function lineno: 66 - nodeid: tests/test_utils_reprate.py::test_repr_method_with_initial_values type: Function lineno: 85 - nodeid: tests/test_utils_reprate.py::test_invalid_target_handling[invalid_instrument] type: Function lineno: 101 - nodeid: tests/test_utils_reprate.py::test_invalid_target_handling[non_existing_beamline] type: Function lineno: 101 - nodeid: tests/test_utils_reprate.py::test_retrieve_pvname_for_none_instrument_and_beamline type: Function lineno: 112 - Outcome:
⚠️ Warnings
Warnings nº1
message: invalid escape sequence \-
category: DeprecationWarning
when: collect
filename: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/bsread/h5.py
lineno: 207
Warnings nº2
message: The module numpy.dual is deprecated. Instead of using dual, use the functions directly from numpy or scipy.
category: DeprecationWarning
when: collect
filename: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/scipy/fft/__init__.py
lineno: 97