diff --git a/ci-reports/markdown/TEST-REPORT.md b/ci-reports/markdown/TEST-REPORT.md
index 38b393aa..7838ba6b 100644
--- a/ci-reports/markdown/TEST-REPORT.md
+++ b/ci-reports/markdown/TEST-REPORT.md
@@ -1,8 +1,8 @@
# ๐งช Test Report
-*Generated on 2025-07-16 14:32:13*
+*Generated on 2025-07-16 14:34:15*
## ๐งพ General Info
-- **duration**: 7.721300363540649
+- **duration**: 7.735873460769653
- **root**: /workspace/tligui_y/slic
- **environment**:
@@ -38,7 +38,7 @@
๐ Duration
```
-0.0006900430889800191
+0.0007158650550991297
```
@@ -61,7 +61,7 @@ passed
๐ Duration
```
-0.0007621539989486337
+0.0007321040611714125
```
@@ -84,7 +84,7 @@ passed
๐ Duration
```
-0.000287979026325047
+0.00028637005016207695
```
@@ -116,7 +116,7 @@ passed
๐ Duration
```
-0.0003227939596399665
+0.0003446050686761737
```
@@ -139,7 +139,7 @@ passed
๐ Duration
```
-0.0006690300069749355
+0.000658832024782896
```
@@ -162,7 +162,7 @@ passed
๐ Duration
```
-0.00017249805387109518
+0.00017774698790162802
```
@@ -194,7 +194,7 @@ passed
๐ Duration
```
-0.0003903810866177082
+0.0003968330565840006
```
@@ -217,7 +217,7 @@ passed
๐ Duration
```
-0.0006688369903713465
+0.0006726550636813045
```
@@ -240,7 +240,7 @@ passed
๐ Duration
```
-0.00017030397430062294
+0.00019248202443122864
```
@@ -272,7 +272,7 @@ passed
๐ Duration
```
-0.00031977402977645397
+0.00033007701858878136
```
@@ -295,7 +295,7 @@ passed
๐ Duration
```
-0.0005597569979727268
+0.0005792360752820969
```
@@ -318,7 +318,7 @@ passed
๐ Duration
```
-0.00016439997125416994
+0.00017094193026423454
```
@@ -350,7 +350,7 @@ passed
๐ Duration
```
-0.0003113020211458206
+0.0002985119353979826
```
@@ -373,7 +373,7 @@ passed
๐ Duration
```
-0.0005211840616539121
+0.0005326259415596724
```
@@ -396,7 +396,7 @@ passed
๐ Duration
```
-0.00018029497005045414
+0.0001605310244485736
```
@@ -428,7 +428,7 @@ passed
๐ Duration
```
-0.00033494201488792896
+0.00030821096152067184
```
@@ -451,7 +451,7 @@ passed
๐ Duration
```
-0.0006438929121941328
+0.0005999939749017358
```
@@ -474,7 +474,7 @@ passed
๐ Duration
```
-0.00017235404811799526
+0.0001704689348116517
```
@@ -506,7 +506,7 @@ passed
๐ Duration
```
-0.0003052119864150882
+0.0002981770085170865
```
@@ -529,7 +529,7 @@ passed
๐ Duration
```
-0.0005133100785315037
+0.0005402590613812208
```
@@ -552,7 +552,7 @@ passed
๐ Duration
```
-0.00017801206558942795
+0.00016658194363117218
```
@@ -584,7 +584,7 @@ passed
๐ Duration
```
-0.00030986510682851076
+0.00029771996196359396
```
@@ -607,7 +607,7 @@ passed
๐ Duration
```
-0.0004985859850421548
+0.0005087800091132522
```
@@ -630,7 +630,7 @@ passed
๐ Duration
```
-0.0001823559869080782
+0.00017083692364394665
```
@@ -662,7 +662,7 @@ passed
๐ Duration
```
-0.00030245399102568626
+0.00031374290119856596
```
@@ -685,7 +685,7 @@ passed
๐ Duration
```
-0.0005233400734141469
+0.0005240800091996789
```
@@ -708,7 +708,7 @@ passed
๐ Duration
```
-0.00017812801524996758
+0.00016080006025731564
```
@@ -740,7 +740,7 @@ passed
๐ Duration
```
-0.00032331107649952173
+0.00028859497979283333
```
@@ -763,7 +763,7 @@ passed
๐ Duration
```
-0.0006131969857960939
+0.0006026470800861716
```
@@ -786,7 +786,7 @@ passed
๐ Duration
```
-0.0001825729850679636
+0.0001696969848126173
```
@@ -818,7 +818,7 @@ passed
๐ Duration
```
-0.00029951799660921097
+0.000309012015350163
```
@@ -841,7 +841,7 @@ passed
๐ Duration
```
-0.0004938349593430758
+0.0004917531041428447
```
@@ -864,7 +864,7 @@ passed
๐ Duration
```
-0.00016659707762300968
+0.00018223701044917107
```
@@ -896,7 +896,7 @@ passed
๐ Duration
```
-0.00031767203472554684
+0.00030443607829511166
```
@@ -919,7 +919,7 @@ passed
๐ Duration
```
-0.00048322801012545824
+0.0005007879808545113
```
@@ -942,7 +942,7 @@ passed
๐ Duration
```
-0.00016438798047602177
+0.0001618290552869439
```
@@ -981,7 +981,7 @@ passed
๐ Duration
```
-0.00011304393410682678
+0.00011096696835011244
```
@@ -1004,7 +1004,7 @@ passed
๐ Duration
```
-0.0004950820002704859
+0.0004979020450264215
```
@@ -1027,7 +1027,7 @@ passed
๐ Duration
```
-0.0001067380653694272
+0.00011301098857074976
```
@@ -1067,7 +1067,7 @@ passed
๐ Duration
```
-0.00022592302411794662
+0.0002254820428788662
```
@@ -1090,7 +1090,7 @@ passed
๐ Duration
```
-0.0005986880278214812
+0.0005686150398105383
```
@@ -1113,7 +1113,7 @@ passed
๐ Duration
```
-0.00014075497165322304
+0.0001646790187805891
```
@@ -1145,7 +1145,7 @@ passed
๐ Duration
```
-0.0002122239675372839
+0.000218220055103302
```
@@ -1168,7 +1168,7 @@ passed
๐ Duration
```
-0.0004902459913864732
+0.0005008459556847811
```
@@ -1191,7 +1191,7 @@ passed
๐ Duration
```
-0.00014302704948931932
+0.00015062908641994
```
@@ -1239,7 +1239,7 @@ passed
๐ Duration
```
-0.00031377794221043587
+0.00032629293855279684
```
@@ -1262,7 +1262,7 @@ passed
๐ Duration
```
-0.0004906019894406199
+0.0004969810834154487
```
@@ -1285,7 +1285,7 @@ passed
๐ Duration
```
-0.00017630495131015778
+0.00016751594375818968
```
@@ -1317,7 +1317,7 @@ passed
๐ Duration
```
-0.0002985660685226321
+0.0002890590112656355
```
@@ -1340,7 +1340,7 @@ passed
๐ Duration
```
-0.0004979899385944009
+0.0004931060830131173
```
@@ -1363,7 +1363,7 @@ passed
๐ Duration
```
-0.00016391405370086432
+0.0001656420063227415
```
@@ -1395,7 +1395,7 @@ passed
๐ Duration
```
-0.0003229889553040266
+0.0003075880231335759
```
@@ -1418,7 +1418,7 @@ passed
๐ Duration
```
-0.0005150840152055025
+0.0005145319737493992
```
@@ -1441,7 +1441,7 @@ passed
๐ Duration
```
-0.00016272696666419506
+0.00015924707986414433
```
@@ -1473,7 +1473,7 @@ passed
๐ Duration
```
-0.0002949509071186185
+0.0002956649987027049
```
@@ -1496,7 +1496,7 @@ passed
๐ Duration
```
-0.0005248769884929061
+0.000502035953104496
```
@@ -1519,7 +1519,7 @@ passed
๐ Duration
```
-0.00016748893540352583
+0.00016333791427314281
```
@@ -1551,7 +1551,7 @@ passed
๐ Duration
```
-0.00030721898656338453
+0.0003379139816388488
```
@@ -1574,7 +1574,7 @@ passed
๐ Duration
```
-0.0005043509881943464
+0.0005731489509344101
```
@@ -1597,7 +1597,7 @@ passed
๐ Duration
```
-0.00015868502669036388
+0.0001629730686545372
```
@@ -1629,7 +1629,7 @@ passed
๐ Duration
```
-0.0002946129534393549
+0.00032299302984029055
```
@@ -1652,7 +1652,7 @@ passed
๐ Duration
```
-0.001219870988279581
+0.0005966620519757271
```
@@ -1675,7 +1675,7 @@ passed
๐ Duration
```
-0.00016958697233349085
+0.0001929879654198885
```
@@ -1707,7 +1707,7 @@ passed
๐ Duration
```
-0.0003056139685213566
+0.0003057699650526047
```
@@ -1730,7 +1730,7 @@ passed
๐ Duration
```
-0.00047934800386428833
+0.0004941379884257913
```
@@ -1753,7 +1753,7 @@ passed
๐ Duration
```
-0.00016426702495664358
+0.00016264710575342178
```
@@ -1785,7 +1785,7 @@ passed
๐ Duration
```
-0.00030876905657351017
+0.00031247991137206554
```
@@ -1808,7 +1808,7 @@ passed
๐ Duration
```
-0.000525434035807848
+0.0005037719383835793
```
@@ -1831,7 +1831,7 @@ passed
๐ Duration
```
-0.00016354105900973082
+0.00016752001829445362
```
@@ -1863,7 +1863,7 @@ passed
๐ Duration
```
-0.00030072894878685474
+0.0003093129489570856
```
@@ -1886,7 +1886,7 @@ passed
๐ Duration
```
-0.00047858606558293104
+0.00048709206748753786
```
@@ -1909,7 +1909,7 @@ passed
๐ Duration
```
-0.0001506740227341652
+0.0001795829739421606
```
@@ -1941,7 +1941,7 @@ passed
๐ Duration
```
-0.00030274002347141504
+0.00030904391314834356
```
@@ -1964,7 +1964,7 @@ passed
๐ Duration
```
-0.000492515042424202
+0.0005088340258225799
```
@@ -1987,7 +1987,7 @@ passed
๐ Duration
```
-0.0001664389856159687
+0.00016639695968478918
```
@@ -2026,7 +2026,7 @@ passed
๐ Duration
```
-0.00011302100028842688
+0.00011222704779356718
```
@@ -2049,7 +2049,7 @@ passed
๐ Duration
```
-0.00047946907579898834
+0.000548038980923593
```
@@ -2072,7 +2072,7 @@ passed
๐ Duration
```
-0.00011560297571122646
+0.00013216899242252111
```
@@ -2112,7 +2112,7 @@ passed
๐ Duration
```
-0.00024057598784565926
+0.00022292998619377613
```
@@ -2135,7 +2135,7 @@ passed
๐ Duration
```
-0.0004770009545609355
+0.0005408049328252673
```
@@ -2158,7 +2158,7 @@ passed
๐ Duration
```
-0.00015350396279245615
+0.0001453440636396408
```
@@ -2190,7 +2190,7 @@ passed
๐ Duration
```
-0.00022255396470427513
+0.0002678949385881424
```
@@ -2213,7 +2213,7 @@ passed
๐ Duration
```
-0.0005881469696760178
+0.0005922160344198346
```
@@ -2236,7 +2236,7 @@ passed
๐ Duration
```
-0.00014718598686158657
+0.00016108003910630941
```
@@ -2292,7 +2292,7 @@ passed
๐ Duration
```
-0.0003096730215474963
+0.00031313998624682426
```
@@ -2315,7 +2315,7 @@ passed
๐ Duration
```
-0.0008430469315499067
+0.0007992000319063663
```
@@ -2406,7 +2406,7 @@ tests/test_bis.py:39: AssertionError
๐ Duration
```
-0.0003506849752739072
+0.00033206993248313665
```
@@ -2454,7 +2454,7 @@ passed
๐ Duration
```
-0.00030251394491642714
+0.00030090496875345707
```
@@ -2477,7 +2477,7 @@ passed
๐ Duration
```
-0.000732103013433516
+0.0007762339664623141
```
@@ -2568,7 +2568,7 @@ tests/test_utils_ask_yes_no.py:39: AssertionError
๐ Duration
```
-0.00020655791740864515
+0.00019194697961211205
```
@@ -2600,7 +2600,7 @@ passed
๐ Duration
```
-0.00029304297640919685
+0.0003037330461665988
```
@@ -2623,7 +2623,7 @@ passed
๐ Duration
```
-0.000649268040433526
+0.0006447670748457313
```
@@ -2714,7 +2714,7 @@ tests/test_utils_ask_yes_no.py:39: AssertionError
๐ Duration
```
-0.00018679199274629354
+0.00018777803052216768
```
@@ -2746,7 +2746,7 @@ passed
๐ Duration
```
-0.00029256101697683334
+0.00030891597270965576
```
@@ -2769,7 +2769,7 @@ passed
๐ Duration
```
-0.0006877999985590577
+0.0006595179438591003
```
@@ -2860,7 +2860,7 @@ tests/test_utils_ask_yes_no.py:39: AssertionError
๐ Duration
```
-0.00019394198898226023
+0.000196535955183208
```
diff --git a/ci-reports/markdown/json-tree-view.txt b/ci-reports/markdown/json-tree-view.txt
index 998becd2..eb3f7563 100644
--- a/ci-reports/markdown/json-tree-view.txt
+++ b/ci-reports/markdown/json-tree-view.txt
@@ -1,6 +1,6 @@
๐ ci-reports/markdown/pytest-report.json
-โโโ created: 1752676331.7622921
-โโโ duration: 7.721300363540649
+โโโ created: 1752676453.7817507
+โโโ duration: 7.735873460769653
โโโ exitcode: 1
โโโ root: /workspace/tligui_y/slic
โโโ environment
@@ -550,13 +550,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0006900430889800191
+โ โ โ โโโ duration: 0.0007158650550991297
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0007621539989486337
+โ โ โ โโโ duration: 0.0007321040611714125
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.000287979026325047
+โ โ โโโ duration: 0.00028637005016207695
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -574,13 +574,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003227939596399665
+โ โ โ โโโ duration: 0.0003446050686761737
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006690300069749355
+โ โ โ โโโ duration: 0.000658832024782896
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017249805387109518
+โ โ โโโ duration: 0.00017774698790162802
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -598,10 +598,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003096730215474963
+โ โ โ โโโ duration: 0.00031313998624682426
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0008430469315499067
+โ โ โ โโโ duration: 0.0007992000319063663
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path: /workspace/tligui_y/slic/tests/test_bis.py
@@ -652,7 +652,7 @@
โ โ โ
โ โ โ tests/test_bis.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.0003506849752739072
+โ โ โโโ duration: 0.00033206993248313665
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -670,13 +670,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003903810866177082
+โ โ โ โโโ duration: 0.0003968330565840006
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006688369903713465
+โ โ โ โโโ duration: 0.0006726550636813045
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017030397430062294
+โ โ โโโ duration: 0.00019248202443122864
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -694,13 +694,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00031977402977645397
+โ โ โ โโโ duration: 0.00033007701858878136
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005597569979727268
+โ โ โ โโโ duration: 0.0005792360752820969
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016439997125416994
+โ โ โโโ duration: 0.00017094193026423454
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -719,13 +719,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003113020211458206
+โ โ โ โโโ duration: 0.0002985119353979826
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005211840616539121
+โ โ โ โโโ duration: 0.0005326259415596724
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00018029497005045414
+โ โ โโโ duration: 0.0001605310244485736
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -743,13 +743,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00033494201488792896
+โ โ โ โโโ duration: 0.00030821096152067184
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006438929121941328
+โ โ โ โโโ duration: 0.0005999939749017358
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017235404811799526
+โ โ โโโ duration: 0.0001704689348116517
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -767,13 +767,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003052119864150882
+โ โ โ โโโ duration: 0.0002981770085170865
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005133100785315037
+โ โ โ โโโ duration: 0.0005402590613812208
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017801206558942795
+โ โ โโโ duration: 0.00016658194363117218
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -791,13 +791,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030986510682851076
+โ โ โ โโโ duration: 0.00029771996196359396
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004985859850421548
+โ โ โ โโโ duration: 0.0005087800091132522
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001823559869080782
+โ โ โโโ duration: 0.00017083692364394665
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -815,13 +815,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030245399102568626
+โ โ โ โโโ duration: 0.00031374290119856596
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005233400734141469
+โ โ โ โโโ duration: 0.0005240800091996789
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017812801524996758
+โ โ โโโ duration: 0.00016080006025731564
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -839,13 +839,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00032331107649952173
+โ โ โ โโโ duration: 0.00028859497979283333
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006131969857960939
+โ โ โ โโโ duration: 0.0006026470800861716
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001825729850679636
+โ โ โโโ duration: 0.0001696969848126173
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -863,13 +863,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00029951799660921097
+โ โ โ โโโ duration: 0.000309012015350163
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004938349593430758
+โ โ โ โโโ duration: 0.0004917531041428447
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016659707762300968
+โ โ โโโ duration: 0.00018223701044917107
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -887,13 +887,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00031767203472554684
+โ โ โ โโโ duration: 0.00030443607829511166
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00048322801012545824
+โ โ โ โโโ duration: 0.0005007879808545113
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016438798047602177
+โ โ โโโ duration: 0.0001618290552869439
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_bis.py::test_ask_yes_no_ctrl_c
@@ -906,13 +906,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00011304393410682678
+โ โ โ โโโ duration: 0.00011096696835011244
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004950820002704859
+โ โ โ โโโ duration: 0.0004979020450264215
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001067380653694272
+โ โ โโโ duration: 0.00011301098857074976
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_bis.py::test_ask_yes_no_ctrl_d
@@ -928,13 +928,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00022592302411794662
+โ โ โ โโโ duration: 0.0002254820428788662
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005986880278214812
+โ โ โ โโโ duration: 0.0005686150398105383
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00014075497165322304
+โ โ โโโ duration: 0.0001646790187805891
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_bis.py::test_ask_yes_no_ctrl_d
@@ -950,13 +950,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002122239675372839
+โ โ โ โโโ duration: 0.000218220055103302
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004902459913864732
+โ โ โ โโโ duration: 0.0005008459556847811
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00014302704948931932
+โ โ โโโ duration: 0.00015062908641994
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -974,13 +974,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00031377794221043587
+โ โ โ โโโ duration: 0.00032629293855279684
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004906019894406199
+โ โ โ โโโ duration: 0.0004969810834154487
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017630495131015778
+โ โ โโโ duration: 0.00016751594375818968
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -998,13 +998,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002985660685226321
+โ โ โ โโโ duration: 0.0002890590112656355
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004979899385944009
+โ โ โ โโโ duration: 0.0004931060830131173
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016391405370086432
+โ โ โโโ duration: 0.0001656420063227415
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1022,10 +1022,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030251394491642714
+โ โ โ โโโ duration: 0.00030090496875345707
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.000732103013433516
+โ โ โ โโโ duration: 0.0007762339664623141
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path:
@@ -1077,7 +1077,7 @@
โ โ โ
โ โ โ tests/test_utils_ask_yes_no.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.00020655791740864515
+โ โ โโโ duration: 0.00019194697961211205
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1095,13 +1095,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003229889553040266
+โ โ โ โโโ duration: 0.0003075880231335759
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005150840152055025
+โ โ โ โโโ duration: 0.0005145319737493992
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016272696666419506
+โ โ โโโ duration: 0.00015924707986414433
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1119,13 +1119,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002949509071186185
+โ โ โ โโโ duration: 0.0002956649987027049
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005248769884929061
+โ โ โ โโโ duration: 0.000502035953104496
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016748893540352583
+โ โ โโโ duration: 0.00016333791427314281
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1144,13 +1144,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030721898656338453
+โ โ โ โโโ duration: 0.0003379139816388488
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005043509881943464
+โ โ โ โโโ duration: 0.0005731489509344101
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00015868502669036388
+โ โ โโโ duration: 0.0001629730686545372
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1168,13 +1168,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002946129534393549
+โ โ โ โโโ duration: 0.00032299302984029055
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.001219870988279581
+โ โ โ โโโ duration: 0.0005966620519757271
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016958697233349085
+โ โ โโโ duration: 0.0001929879654198885
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1192,13 +1192,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003056139685213566
+โ โ โ โโโ duration: 0.0003057699650526047
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00047934800386428833
+โ โ โ โโโ duration: 0.0004941379884257913
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016426702495664358
+โ โ โโโ duration: 0.00016264710575342178
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1216,10 +1216,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00029304297640919685
+โ โ โ โโโ duration: 0.0003037330461665988
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.000649268040433526
+โ โ โ โโโ duration: 0.0006447670748457313
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path:
@@ -1271,7 +1271,7 @@
โ โ โ
โ โ โ tests/test_utils_ask_yes_no.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.00018679199274629354
+โ โ โโโ duration: 0.00018777803052216768
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1289,13 +1289,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030876905657351017
+โ โ โ โโโ duration: 0.00031247991137206554
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.000525434035807848
+โ โ โ โโโ duration: 0.0005037719383835793
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016354105900973082
+โ โ โโโ duration: 0.00016752001829445362
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1313,13 +1313,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030072894878685474
+โ โ โ โโโ duration: 0.0003093129489570856
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00047858606558293104
+โ โ โ โโโ duration: 0.00048709206748753786
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001506740227341652
+โ โ โโโ duration: 0.0001795829739421606
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1337,10 +1337,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00029256101697683334
+โ โ โ โโโ duration: 0.00030891597270965576
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006877999985590577
+โ โ โ โโโ duration: 0.0006595179438591003
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path:
@@ -1392,7 +1392,7 @@
โ โ โ
โ โ โ tests/test_utils_ask_yes_no.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.00019394198898226023
+โ โ โโโ duration: 0.000196535955183208
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1410,13 +1410,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030274002347141504
+โ โ โ โโโ duration: 0.00030904391314834356
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.000492515042424202
+โ โ โ โโโ duration: 0.0005088340258225799
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001664389856159687
+โ โ โโโ duration: 0.00016639695968478918
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c
@@ -1429,13 +1429,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00011302100028842688
+โ โ โ โโโ duration: 0.00011222704779356718
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00047946907579898834
+โ โ โ โโโ duration: 0.000548038980923593
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00011560297571122646
+โ โ โโโ duration: 0.00013216899242252111
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d
@@ -1451,13 +1451,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00024057598784565926
+โ โ โ โโโ duration: 0.00022292998619377613
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004770009545609355
+โ โ โ โโโ duration: 0.0005408049328252673
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00015350396279245615
+โ โ โโโ duration: 0.0001453440636396408
โ โ โโโ outcome: passed
โ โโโ -
โ โโโ nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d
@@ -1473,13 +1473,13 @@
โ โ โโโ slic
โ โ โโโ
โ โโโ setup
-โ โ โโโ duration: 0.00022255396470427513
+โ โ โโโ duration: 0.0002678949385881424
โ โ โโโ outcome: passed
โ โโโ call
-โ โ โโโ duration: 0.0005881469696760178
+โ โ โโโ duration: 0.0005922160344198346
โ โ โโโ outcome: passed
โ โโโ teardown
-โ โโโ duration: 0.00014718598686158657
+โ โโโ duration: 0.00016108003910630941
โ โโโ outcome: passed
โโโ warnings
โโโ -
diff --git a/ci-reports/markdown/pytest-report.json b/ci-reports/markdown/pytest-report.json
index 55e024c4..61b4709d 100644
--- a/ci-reports/markdown/pytest-report.json
+++ b/ci-reports/markdown/pytest-report.json
@@ -1 +1 @@
-{"created": 1752676331.7622921, "duration": 7.721300363540649, "exitcode": 1, "root": "/workspace/tligui_y/slic", "environment": {}, "summary": {"passed": 28, "failed": 4, "total": 32, "collected": 32}, "collectors": [{"nodeid": "", "outcome": "passed", "result": [{"nodeid": ".", "type": "Dir"}]}, {"nodeid": "ci-reports/allure/data/test-cases", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure/data", "outcome": "passed", "result": [{"nodeid": "ci-reports/allure/data/test-cases", "type": "Dir"}]}, {"nodeid": "ci-reports/allure/export", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure/history", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure/plugin/behaviors", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure/plugin/packages", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure/plugin/screen-diff", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure/plugin", "outcome": "passed", "result": [{"nodeid": "ci-reports/allure/plugin/behaviors", "type": "Dir"}, {"nodeid": "ci-reports/allure/plugin/packages", "type": "Dir"}, {"nodeid": "ci-reports/allure/plugin/screen-diff", "type": "Dir"}]}, {"nodeid": "ci-reports/allure/widgets", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure", "outcome": "passed", "result": [{"nodeid": "ci-reports/allure/data", "type": "Dir"}, {"nodeid": "ci-reports/allure/export", "type": "Dir"}, {"nodeid": "ci-reports/allure/history", "type": "Dir"}, {"nodeid": "ci-reports/allure/plugin", "type": "Dir"}, {"nodeid": "ci-reports/allure/widgets", "type": "Dir"}]}, {"nodeid": "ci-reports/coverage", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/junit", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/markdown", "outcome": "passed", "result": []}, {"nodeid": "ci-reports", "outcome": "passed", "result": [{"nodeid": "ci-reports/allure", "type": "Dir"}, {"nodeid": "ci-reports/coverage", "type": "Dir"}, {"nodeid": "ci-reports/junit", "type": "Dir"}, {"nodeid": "ci-reports/markdown", "type": "Dir"}]}, {"nodeid": "slic/core/acquisition/broker", "outcome": "passed", "result": []}, {"nodeid": "slic/core/acquisition", "outcome": "passed", "result": [{"nodeid": "slic/core/acquisition/broker", "type": "Package"}]}, {"nodeid": "slic/core/adjustable", "outcome": "passed", "result": []}, {"nodeid": "slic/core/condition", "outcome": "passed", "result": []}, {"nodeid": "slic/core/device", "outcome": "passed", "result": []}, {"nodeid": "slic/core/scanner", "outcome": "passed", "result": []}, {"nodeid": "slic/core/sensor", "outcome": "passed", "result": []}, {"nodeid": "slic/core/task", "outcome": "passed", "result": []}, {"nodeid": "slic/core", "outcome": "passed", "result": [{"nodeid": "slic/core/acquisition", "type": "Package"}, {"nodeid": "slic/core/adjustable", "type": "Package"}, {"nodeid": "slic/core/condition", "type": "Package"}, {"nodeid": "slic/core/device", "type": "Package"}, {"nodeid": "slic/core/scanner", "type": "Package"}, {"nodeid": "slic/core/sensor", "type": "Package"}, {"nodeid": "slic/core/task", "type": "Package"}]}, {"nodeid": "slic/devices/cameras", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/endstations", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/general/detectors", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/general/unused", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/general", "outcome": "passed", "result": [{"nodeid": "slic/devices/general/detectors", "type": "Package"}, {"nodeid": "slic/devices/general/unused", "type": "Dir"}]}, {"nodeid": "slic/devices/loptics", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/timing/events", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/timing", "outcome": "passed", "result": [{"nodeid": "slic/devices/timing/events", "type": "Package"}]}, {"nodeid": "slic/devices/xdiagnostics", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/xoptics/slits", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/xoptics/unused", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/xoptics", "outcome": "passed", "result": [{"nodeid": "slic/devices/xoptics/slits", "type": "Package"}, {"nodeid": "slic/devices/xoptics/unused", "type": "Dir"}]}, {"nodeid": "slic/devices", "outcome": "passed", "result": [{"nodeid": "slic/devices/cameras", "type": "Package"}, {"nodeid": "slic/devices/endstations", "type": "Package"}, {"nodeid": "slic/devices/general", "type": "Package"}, {"nodeid": "slic/devices/loptics", "type": "Package"}, {"nodeid": "slic/devices/timing", "type": "Package"}, {"nodeid": "slic/devices/xdiagnostics", "type": "Package"}, {"nodeid": "slic/devices/xoptics", "type": "Package"}]}, {"nodeid": "slic/gui/daqpanels", "outcome": "passed", "result": []}, {"nodeid": "slic/gui/widgets", "outcome": "passed", "result": []}, {"nodeid": "slic/gui", "outcome": "passed", "result": [{"nodeid": "slic/gui/daqpanels", "type": "Package"}, {"nodeid": "slic/gui/widgets", "type": "Package"}]}, {"nodeid": "slic/utils/ioc", "outcome": "passed", "result": []}, {"nodeid": "slic/utils/unused/xsim", "outcome": "passed", "result": []}, {"nodeid": "slic/utils/unused", "outcome": "passed", "result": [{"nodeid": "slic/utils/unused/xsim", "type": "Package"}]}, {"nodeid": "slic/utils", "outcome": "passed", "result": [{"nodeid": "slic/utils/ioc", "type": "Package"}, {"nodeid": "slic/utils/unused", "type": "Dir"}]}, {"nodeid": "slic", "outcome": "passed", "result": [{"nodeid": "slic/core", "type": "Package"}, {"nodeid": "slic/devices", "type": "Package"}, {"nodeid": "slic/gui", "type": "Package"}, {"nodeid": "slic/utils", "type": "Package"}]}, {"nodeid": "tests/test_bis.py", "outcome": "passed", "result": [{"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-y-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-yes-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-n-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-no-False-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-user_input4-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-user_input5-False-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-user_input6-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[y-y-True-Question? [Y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[y-n-False-Question? [Y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[y--True-Question? [Y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[n-y-True-Question? [y/N] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[n-n-False-Question? [y/N] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[n--False-Question? [y/N] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_ctrl_c", "type": "Function", "lineno": 44}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_ctrl_d[n-False]", "type": "Function", "lineno": 49}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_ctrl_d[y-True]", "type": "Function", "lineno": 49}]}, {"nodeid": "tests/test_utils_ask_yes_no.py", "outcome": "passed", "result": [{"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-y-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-yes-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-n-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-no-False-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-user_input4-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-user_input5-False-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-user_input6-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[y-y-True-Question? [Y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[y-n-True-Question? [Y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[y--True-Question? [Y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[n-y-True-Question? [y/N] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[n-n-True-Question? [y/N] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[n--False-Question? [y/N] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c", "type": "Function", "lineno": 44}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[n-False]", "type": "Function", "lineno": 49}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[y-True]", "type": "Function", "lineno": 49}]}, {"nodeid": "tests", "outcome": "passed", "result": [{"nodeid": "tests/test_bis.py", "type": "Module"}, {"nodeid": "tests/test_utils_ask_yes_no.py", "type": "Module"}]}, {"nodeid": ".", "outcome": "passed", "result": [{"nodeid": "ci-reports", "type": "Dir"}, {"nodeid": "slic", "type": "Package"}, {"nodeid": "tests", "type": "Dir"}]}], "tests": [{"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-y-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-y-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-y-True-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0006900430889800191, "outcome": "passed"}, "call": {"duration": 0.0007621539989486337, "outcome": "passed"}, "teardown": {"duration": 0.000287979026325047, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-yes-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-yes-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-yes-True-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0003227939596399665, "outcome": "passed"}, "call": {"duration": 0.0006690300069749355, "outcome": "passed"}, "teardown": {"duration": 0.00017249805387109518, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-n-True-Question? [y/n] ]", "lineno": 10, "outcome": "failed", "keywords": ["test_ask_yes_no_with_defaults[None-n-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-n-True-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0003096730215474963, "outcome": "passed"}, "call": {"duration": 0.0008430469315499067, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_bis.py", "lineno": 39, "message": "assert False == True"}, "traceback": [{"path": "tests/test_bis.py", "lineno": 39, "message": "AssertionError"}], "longrepr": "default = None, user_input = 'n', expected_output = True\nexpected_prompt = 'Question? [y/n] '\n\n @pytest.mark.parametrize(\n \"default, user_input, expected_output, expected_prompt\",\n [\n (None, 'y', True, \"Question? [y/n] \"),\n (None, 'yes', True, \"Question? [y/n] \"),\n (None, 'n', True, \"Question? [y/n] \"), #False\n (None, 'no', False, \"Question? [y/n] \"), #False\n (None, ['maybe', 'y'], True, \"Question? [y/n] \"),\n (None, ['', 'no'], False, \"Question? [y/n] \"),\n (None, ['invalid', 'yes'], True, \"Question? [y/n] \"),\n ('y', 'y', True, \"Question? [Y/n] \"),\n ('y', 'n', False, \"Question? [Y/n] \"), #False\n ('y', '', True, \"Question? [Y/n] \"),\n ('n', 'y', True, \"Question? [y/N] \"),\n ('n', 'n', False, \"Question? [y/N] \"), #False\n ('n', '', False, \"Question? [y/N] \"),\n ]\n )\n def test_ask_yes_no_with_defaults(default, user_input, expected_output, expected_prompt):\n patch_target = 'slic.utils.ask_yes_no.read_input'\n \n if isinstance(user_input, list):\n input_patch = patch(patch_target, side_effect=user_input)\n else:\n input_patch = patch(patch_target, return_value=user_input)\n \n with input_patch as mock_input:\n result = ask_yes_no(\"Question\", default=default)\n> assert result == expected_output\nE assert False == True\n\ntests/test_bis.py:39: AssertionError"}, "teardown": {"duration": 0.0003506849752739072, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-no-False-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-no-False-Question? [y/n] ]", "parametrize", "pytestmark", "None-no-False-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0003903810866177082, "outcome": "passed"}, "call": {"duration": 0.0006688369903713465, "outcome": "passed"}, "teardown": {"duration": 0.00017030397430062294, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-user_input4-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-user_input4-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-user_input4-True-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00031977402977645397, "outcome": "passed"}, "call": {"duration": 0.0005597569979727268, "outcome": "passed"}, "teardown": {"duration": 0.00016439997125416994, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-user_input5-False-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-user_input5-False-Question? [y/n] ]", "parametrize", "pytestmark", "None-user_input5-False-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0003113020211458206, "outcome": "passed"}, "call": {"duration": 0.0005211840616539121, "outcome": "passed"}, "teardown": {"duration": 0.00018029497005045414, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-user_input6-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-user_input6-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-user_input6-True-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00033494201488792896, "outcome": "passed"}, "call": {"duration": 0.0006438929121941328, "outcome": "passed"}, "teardown": {"duration": 0.00017235404811799526, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[y-y-True-Question? [Y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[y-y-True-Question? [Y/n] ]", "parametrize", "pytestmark", "y-y-True-Question? [Y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0003052119864150882, "outcome": "passed"}, "call": {"duration": 0.0005133100785315037, "outcome": "passed"}, "teardown": {"duration": 0.00017801206558942795, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[y-n-False-Question? [Y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[y-n-False-Question? [Y/n] ]", "parametrize", "pytestmark", "y-n-False-Question? [Y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00030986510682851076, "outcome": "passed"}, "call": {"duration": 0.0004985859850421548, "outcome": "passed"}, "teardown": {"duration": 0.0001823559869080782, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[y--True-Question? [Y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[y--True-Question? [Y/n] ]", "parametrize", "pytestmark", "y--True-Question? [Y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00030245399102568626, "outcome": "passed"}, "call": {"duration": 0.0005233400734141469, "outcome": "passed"}, "teardown": {"duration": 0.00017812801524996758, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[n-y-True-Question? [y/N] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[n-y-True-Question? [y/N] ]", "parametrize", "pytestmark", "n-y-True-Question? [y/N] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00032331107649952173, "outcome": "passed"}, "call": {"duration": 0.0006131969857960939, "outcome": "passed"}, "teardown": {"duration": 0.0001825729850679636, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[n-n-False-Question? [y/N] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[n-n-False-Question? [y/N] ]", "parametrize", "pytestmark", "n-n-False-Question? [y/N] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00029951799660921097, "outcome": "passed"}, "call": {"duration": 0.0004938349593430758, "outcome": "passed"}, "teardown": {"duration": 0.00016659707762300968, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[n--False-Question? [y/N] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[n--False-Question? [y/N] ]", "parametrize", "pytestmark", "n--False-Question? [y/N] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00031767203472554684, "outcome": "passed"}, "call": {"duration": 0.00048322801012545824, "outcome": "passed"}, "teardown": {"duration": 0.00016438798047602177, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_ctrl_c", "lineno": 44, "outcome": "passed", "keywords": ["test_ask_yes_no_ctrl_c", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00011304393410682678, "outcome": "passed"}, "call": {"duration": 0.0004950820002704859, "outcome": "passed"}, "teardown": {"duration": 0.0001067380653694272, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_ctrl_d[n-False]", "lineno": 49, "outcome": "passed", "keywords": ["test_ask_yes_no_ctrl_d[n-False]", "parametrize", "pytestmark", "n-False", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00022592302411794662, "outcome": "passed"}, "call": {"duration": 0.0005986880278214812, "outcome": "passed"}, "teardown": {"duration": 0.00014075497165322304, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_ctrl_d[y-True]", "lineno": 49, "outcome": "passed", "keywords": ["test_ask_yes_no_ctrl_d[y-True]", "parametrize", "pytestmark", "y-True", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0002122239675372839, "outcome": "passed"}, "call": {"duration": 0.0004902459913864732, "outcome": "passed"}, "teardown": {"duration": 0.00014302704948931932, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-y-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-y-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-y-True-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00031377794221043587, "outcome": "passed"}, "call": {"duration": 0.0004906019894406199, "outcome": "passed"}, "teardown": {"duration": 0.00017630495131015778, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-yes-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-yes-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-yes-True-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0002985660685226321, "outcome": "passed"}, "call": {"duration": 0.0004979899385944009, "outcome": "passed"}, "teardown": {"duration": 0.00016391405370086432, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-n-True-Question? [y/n] ]", "lineno": 10, "outcome": "failed", "keywords": ["test_ask_yes_no_with_defaults[None-n-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-n-True-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00030251394491642714, "outcome": "passed"}, "call": {"duration": 0.000732103013433516, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_utils_ask_yes_no.py", "lineno": 39, "message": "assert False == True"}, "traceback": [{"path": "tests/test_utils_ask_yes_no.py", "lineno": 39, "message": "AssertionError"}], "longrepr": "default = None, user_input = 'n', expected_output = True\nexpected_prompt = 'Question? [y/n] '\n\n @pytest.mark.parametrize(\n \"default, user_input, expected_output, expected_prompt\",\n [\n (None, 'y', True, \"Question? [y/n] \"),\n (None, 'yes', True, \"Question? [y/n] \"),\n (None, 'n', True, \"Question? [y/n] \"), #False\n (None, 'no', False, \"Question? [y/n] \"), #False\n (None, ['maybe', 'y'], True, \"Question? [y/n] \"),\n (None, ['', 'no'], False, \"Question? [y/n] \"),\n (None, ['invalid', 'yes'], True, \"Question? [y/n] \"),\n ('y', 'y', True, \"Question? [Y/n] \"),\n ('y', 'n', True, \"Question? [Y/n] \"), #False\n ('y', '', True, \"Question? [Y/n] \"),\n ('n', 'y', True, \"Question? [y/N] \"),\n ('n', 'n', True, \"Question? [y/N] \"), #False\n ('n', '', False, \"Question? [y/N] \"),\n ]\n )\n def test_ask_yes_no_with_defaults(default, user_input, expected_output, expected_prompt):\n patch_target = 'slic.utils.ask_yes_no.read_input'\n \n if isinstance(user_input, list):\n input_patch = patch(patch_target, side_effect=user_input)\n else:\n input_patch = patch(patch_target, return_value=user_input)\n \n with input_patch as mock_input:\n result = ask_yes_no(\"Question\", default=default)\n> assert result == expected_output\nE assert False == True\n\ntests/test_utils_ask_yes_no.py:39: AssertionError"}, "teardown": {"duration": 0.00020655791740864515, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-no-False-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-no-False-Question? [y/n] ]", "parametrize", "pytestmark", "None-no-False-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0003229889553040266, "outcome": "passed"}, "call": {"duration": 0.0005150840152055025, "outcome": "passed"}, "teardown": {"duration": 0.00016272696666419506, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-user_input4-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-user_input4-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-user_input4-True-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0002949509071186185, "outcome": "passed"}, "call": {"duration": 0.0005248769884929061, "outcome": "passed"}, "teardown": {"duration": 0.00016748893540352583, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-user_input5-False-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-user_input5-False-Question? [y/n] ]", "parametrize", "pytestmark", "None-user_input5-False-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00030721898656338453, "outcome": "passed"}, "call": {"duration": 0.0005043509881943464, "outcome": "passed"}, "teardown": {"duration": 0.00015868502669036388, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-user_input6-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-user_input6-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-user_input6-True-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0002946129534393549, "outcome": "passed"}, "call": {"duration": 0.001219870988279581, "outcome": "passed"}, "teardown": {"duration": 0.00016958697233349085, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[y-y-True-Question? [Y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[y-y-True-Question? [Y/n] ]", "parametrize", "pytestmark", "y-y-True-Question? [Y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0003056139685213566, "outcome": "passed"}, "call": {"duration": 0.00047934800386428833, "outcome": "passed"}, "teardown": {"duration": 0.00016426702495664358, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[y-n-True-Question? [Y/n] ]", "lineno": 10, "outcome": "failed", "keywords": ["test_ask_yes_no_with_defaults[y-n-True-Question? [Y/n] ]", "parametrize", "pytestmark", "y-n-True-Question? [Y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00029304297640919685, "outcome": "passed"}, "call": {"duration": 0.000649268040433526, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_utils_ask_yes_no.py", "lineno": 39, "message": "assert False == True"}, "traceback": [{"path": "tests/test_utils_ask_yes_no.py", "lineno": 39, "message": "AssertionError"}], "longrepr": "default = 'y', user_input = 'n', expected_output = True\nexpected_prompt = 'Question? [Y/n] '\n\n @pytest.mark.parametrize(\n \"default, user_input, expected_output, expected_prompt\",\n [\n (None, 'y', True, \"Question? [y/n] \"),\n (None, 'yes', True, \"Question? [y/n] \"),\n (None, 'n', True, \"Question? [y/n] \"), #False\n (None, 'no', False, \"Question? [y/n] \"), #False\n (None, ['maybe', 'y'], True, \"Question? [y/n] \"),\n (None, ['', 'no'], False, \"Question? [y/n] \"),\n (None, ['invalid', 'yes'], True, \"Question? [y/n] \"),\n ('y', 'y', True, \"Question? [Y/n] \"),\n ('y', 'n', True, \"Question? [Y/n] \"), #False\n ('y', '', True, \"Question? [Y/n] \"),\n ('n', 'y', True, \"Question? [y/N] \"),\n ('n', 'n', True, \"Question? [y/N] \"), #False\n ('n', '', False, \"Question? [y/N] \"),\n ]\n )\n def test_ask_yes_no_with_defaults(default, user_input, expected_output, expected_prompt):\n patch_target = 'slic.utils.ask_yes_no.read_input'\n \n if isinstance(user_input, list):\n input_patch = patch(patch_target, side_effect=user_input)\n else:\n input_patch = patch(patch_target, return_value=user_input)\n \n with input_patch as mock_input:\n result = ask_yes_no(\"Question\", default=default)\n> assert result == expected_output\nE assert False == True\n\ntests/test_utils_ask_yes_no.py:39: AssertionError"}, "teardown": {"duration": 0.00018679199274629354, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[y--True-Question? [Y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[y--True-Question? [Y/n] ]", "parametrize", "pytestmark", "y--True-Question? [Y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00030876905657351017, "outcome": "passed"}, "call": {"duration": 0.000525434035807848, "outcome": "passed"}, "teardown": {"duration": 0.00016354105900973082, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[n-y-True-Question? [y/N] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[n-y-True-Question? [y/N] ]", "parametrize", "pytestmark", "n-y-True-Question? [y/N] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00030072894878685474, "outcome": "passed"}, "call": {"duration": 0.00047858606558293104, "outcome": "passed"}, "teardown": {"duration": 0.0001506740227341652, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[n-n-True-Question? [y/N] ]", "lineno": 10, "outcome": "failed", "keywords": ["test_ask_yes_no_with_defaults[n-n-True-Question? [y/N] ]", "parametrize", "pytestmark", "n-n-True-Question? [y/N] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00029256101697683334, "outcome": "passed"}, "call": {"duration": 0.0006877999985590577, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_utils_ask_yes_no.py", "lineno": 39, "message": "assert False == True"}, "traceback": [{"path": "tests/test_utils_ask_yes_no.py", "lineno": 39, "message": "AssertionError"}], "longrepr": "default = 'n', user_input = 'n', expected_output = True\nexpected_prompt = 'Question? [y/N] '\n\n @pytest.mark.parametrize(\n \"default, user_input, expected_output, expected_prompt\",\n [\n (None, 'y', True, \"Question? [y/n] \"),\n (None, 'yes', True, \"Question? [y/n] \"),\n (None, 'n', True, \"Question? [y/n] \"), #False\n (None, 'no', False, \"Question? [y/n] \"), #False\n (None, ['maybe', 'y'], True, \"Question? [y/n] \"),\n (None, ['', 'no'], False, \"Question? [y/n] \"),\n (None, ['invalid', 'yes'], True, \"Question? [y/n] \"),\n ('y', 'y', True, \"Question? [Y/n] \"),\n ('y', 'n', True, \"Question? [Y/n] \"), #False\n ('y', '', True, \"Question? [Y/n] \"),\n ('n', 'y', True, \"Question? [y/N] \"),\n ('n', 'n', True, \"Question? [y/N] \"), #False\n ('n', '', False, \"Question? [y/N] \"),\n ]\n )\n def test_ask_yes_no_with_defaults(default, user_input, expected_output, expected_prompt):\n patch_target = 'slic.utils.ask_yes_no.read_input'\n \n if isinstance(user_input, list):\n input_patch = patch(patch_target, side_effect=user_input)\n else:\n input_patch = patch(patch_target, return_value=user_input)\n \n with input_patch as mock_input:\n result = ask_yes_no(\"Question\", default=default)\n> assert result == expected_output\nE assert False == True\n\ntests/test_utils_ask_yes_no.py:39: AssertionError"}, "teardown": {"duration": 0.00019394198898226023, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[n--False-Question? [y/N] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[n--False-Question? [y/N] ]", "parametrize", "pytestmark", "n--False-Question? [y/N] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00030274002347141504, "outcome": "passed"}, "call": {"duration": 0.000492515042424202, "outcome": "passed"}, "teardown": {"duration": 0.0001664389856159687, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c", "lineno": 44, "outcome": "passed", "keywords": ["test_ask_yes_no_ctrl_c", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00011302100028842688, "outcome": "passed"}, "call": {"duration": 0.00047946907579898834, "outcome": "passed"}, "teardown": {"duration": 0.00011560297571122646, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[n-False]", "lineno": 49, "outcome": "passed", "keywords": ["test_ask_yes_no_ctrl_d[n-False]", "parametrize", "pytestmark", "n-False", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00024057598784565926, "outcome": "passed"}, "call": {"duration": 0.0004770009545609355, "outcome": "passed"}, "teardown": {"duration": 0.00015350396279245615, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[y-True]", "lineno": 49, "outcome": "passed", "keywords": ["test_ask_yes_no_ctrl_d[y-True]", "parametrize", "pytestmark", "y-True", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00022255396470427513, "outcome": "passed"}, "call": {"duration": 0.0005881469696760178, "outcome": "passed"}, "teardown": {"duration": 0.00014718598686158657, "outcome": "passed"}}], "warnings": [{"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}, {"message": "pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html", "category": "DeprecationWarning", "when": "collect", "filename": "/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/pyepics-3.4.3-py3.9.egg/epics/ca.py", "lineno": 28}, {"message": "Deprecated call to `pkg_resources.declare_namespace('mpl_toolkits')`.\nImplementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages", "category": "DeprecationWarning", "when": "collect", "filename": "/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/pkg_resources/__init__.py", "lineno": 3154}, {"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}]}
\ No newline at end of file
+{"created": 1752676453.7817507, "duration": 7.735873460769653, "exitcode": 1, "root": "/workspace/tligui_y/slic", "environment": {}, "summary": {"passed": 28, "failed": 4, "total": 32, "collected": 32}, "collectors": [{"nodeid": "", "outcome": "passed", "result": [{"nodeid": ".", "type": "Dir"}]}, {"nodeid": "ci-reports/allure/data/test-cases", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure/data", "outcome": "passed", "result": [{"nodeid": "ci-reports/allure/data/test-cases", "type": "Dir"}]}, {"nodeid": "ci-reports/allure/export", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure/history", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure/plugin/behaviors", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure/plugin/packages", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure/plugin/screen-diff", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure/plugin", "outcome": "passed", "result": [{"nodeid": "ci-reports/allure/plugin/behaviors", "type": "Dir"}, {"nodeid": "ci-reports/allure/plugin/packages", "type": "Dir"}, {"nodeid": "ci-reports/allure/plugin/screen-diff", "type": "Dir"}]}, {"nodeid": "ci-reports/allure/widgets", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/allure", "outcome": "passed", "result": [{"nodeid": "ci-reports/allure/data", "type": "Dir"}, {"nodeid": "ci-reports/allure/export", "type": "Dir"}, {"nodeid": "ci-reports/allure/history", "type": "Dir"}, {"nodeid": "ci-reports/allure/plugin", "type": "Dir"}, {"nodeid": "ci-reports/allure/widgets", "type": "Dir"}]}, {"nodeid": "ci-reports/coverage", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/junit", "outcome": "passed", "result": []}, {"nodeid": "ci-reports/markdown", "outcome": "passed", "result": []}, {"nodeid": "ci-reports", "outcome": "passed", "result": [{"nodeid": "ci-reports/allure", "type": "Dir"}, {"nodeid": "ci-reports/coverage", "type": "Dir"}, {"nodeid": "ci-reports/junit", "type": "Dir"}, {"nodeid": "ci-reports/markdown", "type": "Dir"}]}, {"nodeid": "slic/core/acquisition/broker", "outcome": "passed", "result": []}, {"nodeid": "slic/core/acquisition", "outcome": "passed", "result": [{"nodeid": "slic/core/acquisition/broker", "type": "Package"}]}, {"nodeid": "slic/core/adjustable", "outcome": "passed", "result": []}, {"nodeid": "slic/core/condition", "outcome": "passed", "result": []}, {"nodeid": "slic/core/device", "outcome": "passed", "result": []}, {"nodeid": "slic/core/scanner", "outcome": "passed", "result": []}, {"nodeid": "slic/core/sensor", "outcome": "passed", "result": []}, {"nodeid": "slic/core/task", "outcome": "passed", "result": []}, {"nodeid": "slic/core", "outcome": "passed", "result": [{"nodeid": "slic/core/acquisition", "type": "Package"}, {"nodeid": "slic/core/adjustable", "type": "Package"}, {"nodeid": "slic/core/condition", "type": "Package"}, {"nodeid": "slic/core/device", "type": "Package"}, {"nodeid": "slic/core/scanner", "type": "Package"}, {"nodeid": "slic/core/sensor", "type": "Package"}, {"nodeid": "slic/core/task", "type": "Package"}]}, {"nodeid": "slic/devices/cameras", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/endstations", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/general/detectors", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/general/unused", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/general", "outcome": "passed", "result": [{"nodeid": "slic/devices/general/detectors", "type": "Package"}, {"nodeid": "slic/devices/general/unused", "type": "Dir"}]}, {"nodeid": "slic/devices/loptics", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/timing/events", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/timing", "outcome": "passed", "result": [{"nodeid": "slic/devices/timing/events", "type": "Package"}]}, {"nodeid": "slic/devices/xdiagnostics", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/xoptics/slits", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/xoptics/unused", "outcome": "passed", "result": []}, {"nodeid": "slic/devices/xoptics", "outcome": "passed", "result": [{"nodeid": "slic/devices/xoptics/slits", "type": "Package"}, {"nodeid": "slic/devices/xoptics/unused", "type": "Dir"}]}, {"nodeid": "slic/devices", "outcome": "passed", "result": [{"nodeid": "slic/devices/cameras", "type": "Package"}, {"nodeid": "slic/devices/endstations", "type": "Package"}, {"nodeid": "slic/devices/general", "type": "Package"}, {"nodeid": "slic/devices/loptics", "type": "Package"}, {"nodeid": "slic/devices/timing", "type": "Package"}, {"nodeid": "slic/devices/xdiagnostics", "type": "Package"}, {"nodeid": "slic/devices/xoptics", "type": "Package"}]}, {"nodeid": "slic/gui/daqpanels", "outcome": "passed", "result": []}, {"nodeid": "slic/gui/widgets", "outcome": "passed", "result": []}, {"nodeid": "slic/gui", "outcome": "passed", "result": [{"nodeid": "slic/gui/daqpanels", "type": "Package"}, {"nodeid": "slic/gui/widgets", "type": "Package"}]}, {"nodeid": "slic/utils/ioc", "outcome": "passed", "result": []}, {"nodeid": "slic/utils/unused/xsim", "outcome": "passed", "result": []}, {"nodeid": "slic/utils/unused", "outcome": "passed", "result": [{"nodeid": "slic/utils/unused/xsim", "type": "Package"}]}, {"nodeid": "slic/utils", "outcome": "passed", "result": [{"nodeid": "slic/utils/ioc", "type": "Package"}, {"nodeid": "slic/utils/unused", "type": "Dir"}]}, {"nodeid": "slic", "outcome": "passed", "result": [{"nodeid": "slic/core", "type": "Package"}, {"nodeid": "slic/devices", "type": "Package"}, {"nodeid": "slic/gui", "type": "Package"}, {"nodeid": "slic/utils", "type": "Package"}]}, {"nodeid": "tests/test_bis.py", "outcome": "passed", "result": [{"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-y-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-yes-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-n-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-no-False-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-user_input4-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-user_input5-False-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-user_input6-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[y-y-True-Question? [Y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[y-n-False-Question? [Y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[y--True-Question? [Y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[n-y-True-Question? [y/N] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[n-n-False-Question? [y/N] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[n--False-Question? [y/N] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_ctrl_c", "type": "Function", "lineno": 44}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_ctrl_d[n-False]", "type": "Function", "lineno": 49}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_ctrl_d[y-True]", "type": "Function", "lineno": 49}]}, {"nodeid": "tests/test_utils_ask_yes_no.py", "outcome": "passed", "result": [{"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-y-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-yes-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-n-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-no-False-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-user_input4-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-user_input5-False-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-user_input6-True-Question? [y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[y-y-True-Question? [Y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[y-n-True-Question? [Y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[y--True-Question? [Y/n] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[n-y-True-Question? [y/N] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[n-n-True-Question? [y/N] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[n--False-Question? [y/N] ]", "type": "Function", "lineno": 10}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c", "type": "Function", "lineno": 44}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[n-False]", "type": "Function", "lineno": 49}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[y-True]", "type": "Function", "lineno": 49}]}, {"nodeid": "tests", "outcome": "passed", "result": [{"nodeid": "tests/test_bis.py", "type": "Module"}, {"nodeid": "tests/test_utils_ask_yes_no.py", "type": "Module"}]}, {"nodeid": ".", "outcome": "passed", "result": [{"nodeid": "ci-reports", "type": "Dir"}, {"nodeid": "slic", "type": "Package"}, {"nodeid": "tests", "type": "Dir"}]}], "tests": [{"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-y-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-y-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-y-True-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0007158650550991297, "outcome": "passed"}, "call": {"duration": 0.0007321040611714125, "outcome": "passed"}, "teardown": {"duration": 0.00028637005016207695, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-yes-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-yes-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-yes-True-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0003446050686761737, "outcome": "passed"}, "call": {"duration": 0.000658832024782896, "outcome": "passed"}, "teardown": {"duration": 0.00017774698790162802, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-n-True-Question? [y/n] ]", "lineno": 10, "outcome": "failed", "keywords": ["test_ask_yes_no_with_defaults[None-n-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-n-True-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00031313998624682426, "outcome": "passed"}, "call": {"duration": 0.0007992000319063663, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_bis.py", "lineno": 39, "message": "assert False == True"}, "traceback": [{"path": "tests/test_bis.py", "lineno": 39, "message": "AssertionError"}], "longrepr": "default = None, user_input = 'n', expected_output = True\nexpected_prompt = 'Question? [y/n] '\n\n @pytest.mark.parametrize(\n \"default, user_input, expected_output, expected_prompt\",\n [\n (None, 'y', True, \"Question? [y/n] \"),\n (None, 'yes', True, \"Question? [y/n] \"),\n (None, 'n', True, \"Question? [y/n] \"), #False\n (None, 'no', False, \"Question? [y/n] \"), #False\n (None, ['maybe', 'y'], True, \"Question? [y/n] \"),\n (None, ['', 'no'], False, \"Question? [y/n] \"),\n (None, ['invalid', 'yes'], True, \"Question? [y/n] \"),\n ('y', 'y', True, \"Question? [Y/n] \"),\n ('y', 'n', False, \"Question? [Y/n] \"), #False\n ('y', '', True, \"Question? [Y/n] \"),\n ('n', 'y', True, \"Question? [y/N] \"),\n ('n', 'n', False, \"Question? [y/N] \"), #False\n ('n', '', False, \"Question? [y/N] \"),\n ]\n )\n def test_ask_yes_no_with_defaults(default, user_input, expected_output, expected_prompt):\n patch_target = 'slic.utils.ask_yes_no.read_input'\n \n if isinstance(user_input, list):\n input_patch = patch(patch_target, side_effect=user_input)\n else:\n input_patch = patch(patch_target, return_value=user_input)\n \n with input_patch as mock_input:\n result = ask_yes_no(\"Question\", default=default)\n> assert result == expected_output\nE assert False == True\n\ntests/test_bis.py:39: AssertionError"}, "teardown": {"duration": 0.00033206993248313665, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-no-False-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-no-False-Question? [y/n] ]", "parametrize", "pytestmark", "None-no-False-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0003968330565840006, "outcome": "passed"}, "call": {"duration": 0.0006726550636813045, "outcome": "passed"}, "teardown": {"duration": 0.00019248202443122864, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-user_input4-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-user_input4-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-user_input4-True-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00033007701858878136, "outcome": "passed"}, "call": {"duration": 0.0005792360752820969, "outcome": "passed"}, "teardown": {"duration": 0.00017094193026423454, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-user_input5-False-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-user_input5-False-Question? [y/n] ]", "parametrize", "pytestmark", "None-user_input5-False-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0002985119353979826, "outcome": "passed"}, "call": {"duration": 0.0005326259415596724, "outcome": "passed"}, "teardown": {"duration": 0.0001605310244485736, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[None-user_input6-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-user_input6-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-user_input6-True-Question? [y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00030821096152067184, "outcome": "passed"}, "call": {"duration": 0.0005999939749017358, "outcome": "passed"}, "teardown": {"duration": 0.0001704689348116517, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[y-y-True-Question? [Y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[y-y-True-Question? [Y/n] ]", "parametrize", "pytestmark", "y-y-True-Question? [Y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0002981770085170865, "outcome": "passed"}, "call": {"duration": 0.0005402590613812208, "outcome": "passed"}, "teardown": {"duration": 0.00016658194363117218, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[y-n-False-Question? [Y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[y-n-False-Question? [Y/n] ]", "parametrize", "pytestmark", "y-n-False-Question? [Y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00029771996196359396, "outcome": "passed"}, "call": {"duration": 0.0005087800091132522, "outcome": "passed"}, "teardown": {"duration": 0.00017083692364394665, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[y--True-Question? [Y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[y--True-Question? [Y/n] ]", "parametrize", "pytestmark", "y--True-Question? [Y/n] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00031374290119856596, "outcome": "passed"}, "call": {"duration": 0.0005240800091996789, "outcome": "passed"}, "teardown": {"duration": 0.00016080006025731564, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[n-y-True-Question? [y/N] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[n-y-True-Question? [y/N] ]", "parametrize", "pytestmark", "n-y-True-Question? [y/N] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00028859497979283333, "outcome": "passed"}, "call": {"duration": 0.0006026470800861716, "outcome": "passed"}, "teardown": {"duration": 0.0001696969848126173, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[n-n-False-Question? [y/N] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[n-n-False-Question? [y/N] ]", "parametrize", "pytestmark", "n-n-False-Question? [y/N] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.000309012015350163, "outcome": "passed"}, "call": {"duration": 0.0004917531041428447, "outcome": "passed"}, "teardown": {"duration": 0.00018223701044917107, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_with_defaults[n--False-Question? [y/N] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[n--False-Question? [y/N] ]", "parametrize", "pytestmark", "n--False-Question? [y/N] ", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00030443607829511166, "outcome": "passed"}, "call": {"duration": 0.0005007879808545113, "outcome": "passed"}, "teardown": {"duration": 0.0001618290552869439, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_ctrl_c", "lineno": 44, "outcome": "passed", "keywords": ["test_ask_yes_no_ctrl_c", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.00011096696835011244, "outcome": "passed"}, "call": {"duration": 0.0004979020450264215, "outcome": "passed"}, "teardown": {"duration": 0.00011301098857074976, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_ctrl_d[n-False]", "lineno": 49, "outcome": "passed", "keywords": ["test_ask_yes_no_ctrl_d[n-False]", "parametrize", "pytestmark", "n-False", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.0002254820428788662, "outcome": "passed"}, "call": {"duration": 0.0005686150398105383, "outcome": "passed"}, "teardown": {"duration": 0.0001646790187805891, "outcome": "passed"}}, {"nodeid": "tests/test_bis.py::test_ask_yes_no_ctrl_d[y-True]", "lineno": 49, "outcome": "passed", "keywords": ["test_ask_yes_no_ctrl_d[y-True]", "parametrize", "pytestmark", "y-True", "test_bis.py", "tests", "slic", ""], "setup": {"duration": 0.000218220055103302, "outcome": "passed"}, "call": {"duration": 0.0005008459556847811, "outcome": "passed"}, "teardown": {"duration": 0.00015062908641994, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-y-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-y-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-y-True-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00032629293855279684, "outcome": "passed"}, "call": {"duration": 0.0004969810834154487, "outcome": "passed"}, "teardown": {"duration": 0.00016751594375818968, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-yes-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-yes-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-yes-True-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0002890590112656355, "outcome": "passed"}, "call": {"duration": 0.0004931060830131173, "outcome": "passed"}, "teardown": {"duration": 0.0001656420063227415, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-n-True-Question? [y/n] ]", "lineno": 10, "outcome": "failed", "keywords": ["test_ask_yes_no_with_defaults[None-n-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-n-True-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00030090496875345707, "outcome": "passed"}, "call": {"duration": 0.0007762339664623141, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_utils_ask_yes_no.py", "lineno": 39, "message": "assert False == True"}, "traceback": [{"path": "tests/test_utils_ask_yes_no.py", "lineno": 39, "message": "AssertionError"}], "longrepr": "default = None, user_input = 'n', expected_output = True\nexpected_prompt = 'Question? [y/n] '\n\n @pytest.mark.parametrize(\n \"default, user_input, expected_output, expected_prompt\",\n [\n (None, 'y', True, \"Question? [y/n] \"),\n (None, 'yes', True, \"Question? [y/n] \"),\n (None, 'n', True, \"Question? [y/n] \"), #False\n (None, 'no', False, \"Question? [y/n] \"), #False\n (None, ['maybe', 'y'], True, \"Question? [y/n] \"),\n (None, ['', 'no'], False, \"Question? [y/n] \"),\n (None, ['invalid', 'yes'], True, \"Question? [y/n] \"),\n ('y', 'y', True, \"Question? [Y/n] \"),\n ('y', 'n', True, \"Question? [Y/n] \"), #False\n ('y', '', True, \"Question? [Y/n] \"),\n ('n', 'y', True, \"Question? [y/N] \"),\n ('n', 'n', True, \"Question? [y/N] \"), #False\n ('n', '', False, \"Question? [y/N] \"),\n ]\n )\n def test_ask_yes_no_with_defaults(default, user_input, expected_output, expected_prompt):\n patch_target = 'slic.utils.ask_yes_no.read_input'\n \n if isinstance(user_input, list):\n input_patch = patch(patch_target, side_effect=user_input)\n else:\n input_patch = patch(patch_target, return_value=user_input)\n \n with input_patch as mock_input:\n result = ask_yes_no(\"Question\", default=default)\n> assert result == expected_output\nE assert False == True\n\ntests/test_utils_ask_yes_no.py:39: AssertionError"}, "teardown": {"duration": 0.00019194697961211205, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-no-False-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-no-False-Question? [y/n] ]", "parametrize", "pytestmark", "None-no-False-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0003075880231335759, "outcome": "passed"}, "call": {"duration": 0.0005145319737493992, "outcome": "passed"}, "teardown": {"duration": 0.00015924707986414433, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-user_input4-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-user_input4-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-user_input4-True-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0002956649987027049, "outcome": "passed"}, "call": {"duration": 0.000502035953104496, "outcome": "passed"}, "teardown": {"duration": 0.00016333791427314281, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-user_input5-False-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-user_input5-False-Question? [y/n] ]", "parametrize", "pytestmark", "None-user_input5-False-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0003379139816388488, "outcome": "passed"}, "call": {"duration": 0.0005731489509344101, "outcome": "passed"}, "teardown": {"duration": 0.0001629730686545372, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[None-user_input6-True-Question? [y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[None-user_input6-True-Question? [y/n] ]", "parametrize", "pytestmark", "None-user_input6-True-Question? [y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00032299302984029055, "outcome": "passed"}, "call": {"duration": 0.0005966620519757271, "outcome": "passed"}, "teardown": {"duration": 0.0001929879654198885, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[y-y-True-Question? [Y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[y-y-True-Question? [Y/n] ]", "parametrize", "pytestmark", "y-y-True-Question? [Y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0003057699650526047, "outcome": "passed"}, "call": {"duration": 0.0004941379884257913, "outcome": "passed"}, "teardown": {"duration": 0.00016264710575342178, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[y-n-True-Question? [Y/n] ]", "lineno": 10, "outcome": "failed", "keywords": ["test_ask_yes_no_with_defaults[y-n-True-Question? [Y/n] ]", "parametrize", "pytestmark", "y-n-True-Question? [Y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0003037330461665988, "outcome": "passed"}, "call": {"duration": 0.0006447670748457313, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_utils_ask_yes_no.py", "lineno": 39, "message": "assert False == True"}, "traceback": [{"path": "tests/test_utils_ask_yes_no.py", "lineno": 39, "message": "AssertionError"}], "longrepr": "default = 'y', user_input = 'n', expected_output = True\nexpected_prompt = 'Question? [Y/n] '\n\n @pytest.mark.parametrize(\n \"default, user_input, expected_output, expected_prompt\",\n [\n (None, 'y', True, \"Question? [y/n] \"),\n (None, 'yes', True, \"Question? [y/n] \"),\n (None, 'n', True, \"Question? [y/n] \"), #False\n (None, 'no', False, \"Question? [y/n] \"), #False\n (None, ['maybe', 'y'], True, \"Question? [y/n] \"),\n (None, ['', 'no'], False, \"Question? [y/n] \"),\n (None, ['invalid', 'yes'], True, \"Question? [y/n] \"),\n ('y', 'y', True, \"Question? [Y/n] \"),\n ('y', 'n', True, \"Question? [Y/n] \"), #False\n ('y', '', True, \"Question? [Y/n] \"),\n ('n', 'y', True, \"Question? [y/N] \"),\n ('n', 'n', True, \"Question? [y/N] \"), #False\n ('n', '', False, \"Question? [y/N] \"),\n ]\n )\n def test_ask_yes_no_with_defaults(default, user_input, expected_output, expected_prompt):\n patch_target = 'slic.utils.ask_yes_no.read_input'\n \n if isinstance(user_input, list):\n input_patch = patch(patch_target, side_effect=user_input)\n else:\n input_patch = patch(patch_target, return_value=user_input)\n \n with input_patch as mock_input:\n result = ask_yes_no(\"Question\", default=default)\n> assert result == expected_output\nE assert False == True\n\ntests/test_utils_ask_yes_no.py:39: AssertionError"}, "teardown": {"duration": 0.00018777803052216768, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[y--True-Question? [Y/n] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[y--True-Question? [Y/n] ]", "parametrize", "pytestmark", "y--True-Question? [Y/n] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00031247991137206554, "outcome": "passed"}, "call": {"duration": 0.0005037719383835793, "outcome": "passed"}, "teardown": {"duration": 0.00016752001829445362, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[n-y-True-Question? [y/N] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[n-y-True-Question? [y/N] ]", "parametrize", "pytestmark", "n-y-True-Question? [y/N] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0003093129489570856, "outcome": "passed"}, "call": {"duration": 0.00048709206748753786, "outcome": "passed"}, "teardown": {"duration": 0.0001795829739421606, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[n-n-True-Question? [y/N] ]", "lineno": 10, "outcome": "failed", "keywords": ["test_ask_yes_no_with_defaults[n-n-True-Question? [y/N] ]", "parametrize", "pytestmark", "n-n-True-Question? [y/N] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00030891597270965576, "outcome": "passed"}, "call": {"duration": 0.0006595179438591003, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_utils_ask_yes_no.py", "lineno": 39, "message": "assert False == True"}, "traceback": [{"path": "tests/test_utils_ask_yes_no.py", "lineno": 39, "message": "AssertionError"}], "longrepr": "default = 'n', user_input = 'n', expected_output = True\nexpected_prompt = 'Question? [y/N] '\n\n @pytest.mark.parametrize(\n \"default, user_input, expected_output, expected_prompt\",\n [\n (None, 'y', True, \"Question? [y/n] \"),\n (None, 'yes', True, \"Question? [y/n] \"),\n (None, 'n', True, \"Question? [y/n] \"), #False\n (None, 'no', False, \"Question? [y/n] \"), #False\n (None, ['maybe', 'y'], True, \"Question? [y/n] \"),\n (None, ['', 'no'], False, \"Question? [y/n] \"),\n (None, ['invalid', 'yes'], True, \"Question? [y/n] \"),\n ('y', 'y', True, \"Question? [Y/n] \"),\n ('y', 'n', True, \"Question? [Y/n] \"), #False\n ('y', '', True, \"Question? [Y/n] \"),\n ('n', 'y', True, \"Question? [y/N] \"),\n ('n', 'n', True, \"Question? [y/N] \"), #False\n ('n', '', False, \"Question? [y/N] \"),\n ]\n )\n def test_ask_yes_no_with_defaults(default, user_input, expected_output, expected_prompt):\n patch_target = 'slic.utils.ask_yes_no.read_input'\n \n if isinstance(user_input, list):\n input_patch = patch(patch_target, side_effect=user_input)\n else:\n input_patch = patch(patch_target, return_value=user_input)\n \n with input_patch as mock_input:\n result = ask_yes_no(\"Question\", default=default)\n> assert result == expected_output\nE assert False == True\n\ntests/test_utils_ask_yes_no.py:39: AssertionError"}, "teardown": {"duration": 0.000196535955183208, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_with_defaults[n--False-Question? [y/N] ]", "lineno": 10, "outcome": "passed", "keywords": ["test_ask_yes_no_with_defaults[n--False-Question? [y/N] ]", "parametrize", "pytestmark", "n--False-Question? [y/N] ", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00030904391314834356, "outcome": "passed"}, "call": {"duration": 0.0005088340258225799, "outcome": "passed"}, "teardown": {"duration": 0.00016639695968478918, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c", "lineno": 44, "outcome": "passed", "keywords": ["test_ask_yes_no_ctrl_c", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00011222704779356718, "outcome": "passed"}, "call": {"duration": 0.000548038980923593, "outcome": "passed"}, "teardown": {"duration": 0.00013216899242252111, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[n-False]", "lineno": 49, "outcome": "passed", "keywords": ["test_ask_yes_no_ctrl_d[n-False]", "parametrize", "pytestmark", "n-False", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.00022292998619377613, "outcome": "passed"}, "call": {"duration": 0.0005408049328252673, "outcome": "passed"}, "teardown": {"duration": 0.0001453440636396408, "outcome": "passed"}}, {"nodeid": "tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d[y-True]", "lineno": 49, "outcome": "passed", "keywords": ["test_ask_yes_no_ctrl_d[y-True]", "parametrize", "pytestmark", "y-True", "test_utils_ask_yes_no.py", "tests", "slic", ""], "setup": {"duration": 0.0002678949385881424, "outcome": "passed"}, "call": {"duration": 0.0005922160344198346, "outcome": "passed"}, "teardown": {"duration": 0.00016108003910630941, "outcome": "passed"}}], "warnings": [{"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}, {"message": "pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html", "category": "DeprecationWarning", "when": "collect", "filename": "/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/pyepics-3.4.3-py3.9.egg/epics/ca.py", "lineno": 28}, {"message": "Deprecated call to `pkg_resources.declare_namespace('mpl_toolkits')`.\nImplementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages", "category": "DeprecationWarning", "when": "collect", "filename": "/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/pkg_resources/__init__.py", "lineno": 3154}, {"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}]}
\ No newline at end of file