diff --git a/ci-reports/markdown/TEST-REPORT.md b/ci-reports/markdown/TEST-REPORT.md
index d6257d057..49a63c006 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 20:38:29*
+*Generated on 2025-07-16 20:45:00*
## ๐งพ General Info
-- **duration**: 7.839002370834351
+- **duration**: 7.864633321762085
- **root**: /workspace/tligui_y/slic
- **environment**:
@@ -38,7 +38,7 @@
๐ Duration
```
-0.0007037919713184237
+0.000728212995454669
```
@@ -61,7 +61,7 @@ passed
๐ Duration
```
-0.0007558580255135894
+0.0007731140358373523
```
@@ -84,7 +84,7 @@ passed
๐ Duration
```
-0.0002886729780584574
+0.0002947719767689705
```
@@ -116,7 +116,7 @@ passed
๐ Duration
```
-0.00033423397690057755
+0.00033657101448625326
```
@@ -139,7 +139,7 @@ passed
๐ Duration
```
-0.0006598670734092593
+0.0006885189795866609
```
@@ -162,7 +162,7 @@ passed
๐ Duration
```
-0.0001871950225904584
+0.00017817795742303133
```
@@ -194,7 +194,7 @@ passed
๐ Duration
```
-0.0003952010301873088
+0.00039159704465419054
```
@@ -217,7 +217,7 @@ passed
๐ Duration
```
-0.0006481800228357315
+0.0006794279906898737
```
@@ -240,7 +240,7 @@ passed
๐ Duration
```
-0.00018137996084988117
+0.00020135811064392328
```
@@ -272,7 +272,7 @@ passed
๐ Duration
```
-0.00031902105547487736
+0.00032915198244154453
```
@@ -295,7 +295,7 @@ passed
๐ Duration
```
-0.0005852420581504703
+0.0005755119491368532
```
@@ -318,7 +318,7 @@ passed
๐ Duration
```
-0.00016825995407998562
+0.0001674939412623644
```
@@ -350,7 +350,7 @@ passed
๐ Duration
```
-0.0003196150064468384
+0.0003110909601673484
```
@@ -373,7 +373,7 @@ passed
๐ Duration
```
-0.0005704789655283093
+0.0005377170164138079
```
@@ -396,7 +396,7 @@ passed
๐ Duration
```
-0.00017062400002032518
+0.00016055605374276638
```
@@ -428,7 +428,7 @@ passed
๐ Duration
```
-0.0003098410088568926
+0.00030378601513803005
```
@@ -451,7 +451,7 @@ passed
๐ Duration
```
-0.0008056990336626768
+0.000617502024397254
```
@@ -474,7 +474,7 @@ passed
๐ Duration
```
-0.00022883201017975807
+0.00016697600949555635
```
@@ -506,7 +506,7 @@ passed
๐ Duration
```
-0.00032306392677128315
+0.0002990060020238161
```
@@ -529,7 +529,7 @@ passed
๐ Duration
```
-0.0005450349999591708
+0.0004967089043930173
```
@@ -552,7 +552,7 @@ passed
๐ Duration
```
-0.00018090603407472372
+0.0001661679707467556
```
@@ -584,7 +584,7 @@ passed
๐ Duration
```
-0.0003113370621576905
+0.00031053496059030294
```
@@ -607,7 +607,7 @@ passed
๐ Duration
```
-0.0005036729853600264
+0.0004712491063401103
```
@@ -630,7 +630,7 @@ passed
๐ Duration
```
-0.00016207294538617134
+0.00015813193749636412
```
@@ -662,7 +662,7 @@ passed
๐ Duration
```
-0.0003060160670429468
+0.00030309101566672325
```
@@ -685,7 +685,7 @@ passed
๐ Duration
```
-0.0004864820512011647
+0.0004913520533591509
```
@@ -708,7 +708,7 @@ passed
๐ Duration
```
-0.00017119699623435736
+0.0001573910703882575
```
@@ -740,7 +740,7 @@ passed
๐ Duration
```
-0.000283197034150362
+0.0002955369418486953
```
@@ -763,7 +763,7 @@ passed
๐ Duration
```
-0.0006318679079413414
+0.000575249083340168
```
@@ -786,7 +786,7 @@ passed
๐ Duration
```
-0.00016621092800050974
+0.0001707269111648202
```
@@ -818,7 +818,7 @@ passed
๐ Duration
```
-0.0003104899078607559
+0.0003058440051972866
```
@@ -841,7 +841,7 @@ passed
๐ Duration
```
-0.0005325040547177196
+0.0004895239835605025
```
@@ -864,7 +864,7 @@ passed
๐ Duration
```
-0.00016622303519397974
+0.000158025068230927
```
@@ -896,7 +896,7 @@ passed
๐ Duration
```
-0.0002977189142256975
+0.00029913103207945824
```
@@ -919,7 +919,7 @@ passed
๐ Duration
```
-0.0004996811039745808
+0.00047800003085285425
```
@@ -942,7 +942,7 @@ passed
๐ Duration
```
-0.00016119400970637798
+0.00015836907550692558
```
@@ -981,7 +981,7 @@ passed
๐ Duration
```
-0.00011571601498872042
+0.00011157593689858913
```
@@ -1004,7 +1004,7 @@ passed
๐ Duration
```
-0.0004821360344067216
+0.00046545197255909443
```
@@ -1027,7 +1027,7 @@ passed
๐ Duration
```
-0.00011097698006778955
+0.00011480902321636677
```
@@ -1067,7 +1067,7 @@ passed
๐ Duration
```
-0.00021746894344687462
+0.00022836308926343918
```
@@ -1090,7 +1090,7 @@ passed
๐ Duration
```
-0.000585290021263063
+0.0014829320134595037
```
@@ -1113,7 +1113,7 @@ passed
๐ Duration
```
-0.00015276705380529165
+0.00015924801118671894
```
@@ -1145,7 +1145,7 @@ passed
๐ Duration
```
-0.0002339840866625309
+0.00024345202837139368
```
@@ -1168,7 +1168,7 @@ passed
๐ Duration
```
-0.0004730510991066694
+0.0004944649990648031
```
@@ -1191,7 +1191,7 @@ passed
๐ Duration
```
-0.00015891599468886852
+0.00015229894779622555
```
@@ -1239,7 +1239,7 @@ passed
๐ Duration
```
-0.0003135529113933444
+0.0003233900060877204
```
@@ -1262,7 +1262,7 @@ passed
๐ Duration
```
-0.0005219019949436188
+0.000499460962601006
```
@@ -1285,7 +1285,7 @@ passed
๐ Duration
```
-0.00016945693641901016
+0.00015945301856845617
```
@@ -1317,7 +1317,7 @@ passed
๐ Duration
```
-0.000314687960781157
+0.00031318410765379667
```
@@ -1340,7 +1340,7 @@ passed
๐ Duration
```
-0.0004911139840260148
+0.0004897810285910964
```
@@ -1363,7 +1363,7 @@ passed
๐ Duration
```
-0.00015987094957381487
+0.00016666902229189873
```
@@ -1395,7 +1395,7 @@ passed
๐ Duration
```
-0.00032102596014738083
+0.00031884200870990753
```
@@ -1418,7 +1418,7 @@ passed
๐ Duration
```
-0.0005126229953020811
+0.0005024400306865573
```
@@ -1441,7 +1441,7 @@ passed
๐ Duration
```
-0.00016039505135267973
+0.00016747298650443554
```
@@ -1473,7 +1473,7 @@ passed
๐ Duration
```
-0.0003000389551743865
+0.0003023089375346899
```
@@ -1496,7 +1496,7 @@ passed
๐ Duration
```
-0.0005249199457466602
+0.0005167240742594004
```
@@ -1519,7 +1519,7 @@ passed
๐ Duration
```
-0.00016049295663833618
+0.0001710199285298586
```
@@ -1551,7 +1551,7 @@ passed
๐ Duration
```
-0.00031542510259896517
+0.0003098259912803769
```
@@ -1574,7 +1574,7 @@ passed
๐ Duration
```
-0.0005043820710852742
+0.000500500900670886
```
@@ -1597,7 +1597,7 @@ passed
๐ Duration
```
-0.00017000699881464243
+0.00016564596444368362
```
@@ -1629,7 +1629,7 @@ passed
๐ Duration
```
-0.00030182499904185534
+0.00030039099510759115
```
@@ -1652,7 +1652,7 @@ passed
๐ Duration
```
-0.0012032570084556937
+0.0006026090122759342
```
@@ -1675,7 +1675,7 @@ passed
๐ Duration
```
-0.00017886899877339602
+0.00016905099619179964
```
@@ -1707,7 +1707,7 @@ passed
๐ Duration
```
-0.0003042209427803755
+0.0003145589726045728
```
@@ -1730,7 +1730,7 @@ passed
๐ Duration
```
-0.0005077290115877986
+0.0004692389629781246
```
@@ -1753,7 +1753,7 @@ passed
๐ Duration
```
-0.0001615869114175439
+0.00017700798343867064
```
@@ -1785,7 +1785,7 @@ passed
๐ Duration
```
-0.00031469203531742096
+0.0003113200655207038
```
@@ -1808,7 +1808,7 @@ passed
๐ Duration
```
-0.0005155979888513684
+0.000509094912558794
```
@@ -1831,7 +1831,7 @@ passed
๐ Duration
```
-0.00016175198834389448
+0.00016040599439293146
```
@@ -1863,7 +1863,7 @@ passed
๐ Duration
```
-0.00029614800587296486
+0.000291300006210804
```
@@ -1886,7 +1886,7 @@ passed
๐ Duration
```
-0.0004879060434177518
+0.00047895300667732954
```
@@ -1909,7 +1909,7 @@ passed
๐ Duration
```
-0.00016004196368157864
+0.00016290706116706133
```
@@ -1941,7 +1941,7 @@ passed
๐ Duration
```
-0.0003162330249324441
+0.00031948299147188663
```
@@ -1964,7 +1964,7 @@ passed
๐ Duration
```
-0.0005078059621155262
+0.0005042169941589236
```
@@ -1987,7 +1987,7 @@ passed
๐ Duration
```
-0.00018223596271127462
+0.0001790180103853345
```
@@ -2026,7 +2026,7 @@ passed
๐ Duration
```
-0.0001152919139713049
+0.00011442694813013077
```
@@ -2049,7 +2049,7 @@ passed
๐ Duration
```
-0.00048627995420247316
+0.0004888389958068728
```
@@ -2072,7 +2072,7 @@ passed
๐ Duration
```
-0.00010921596549451351
+0.00010713597293943167
```
@@ -2112,7 +2112,7 @@ passed
๐ Duration
```
-0.00030350498855113983
+0.0002326329704374075
```
@@ -2135,7 +2135,7 @@ passed
๐ Duration
```
-0.0005084839649498463
+0.0004958059871569276
```
@@ -2158,7 +2158,7 @@ passed
๐ Duration
```
-0.0001451210118830204
+0.00014571810606867075
```
@@ -2190,7 +2190,7 @@ passed
๐ Duration
```
-0.00023097696248441935
+0.00022953411098569632
```
@@ -2213,7 +2213,7 @@ passed
๐ Duration
```
-0.0005941510898992419
+0.0005715680308640003
```
@@ -2236,7 +2236,7 @@ passed
๐ Duration
```
-0.00014371902216225863
+0.00014964002184569836
```
@@ -2292,7 +2292,7 @@ passed
๐ Duration
```
-0.0003207280533388257
+0.00031439505983144045
```
@@ -2315,7 +2315,7 @@ passed
๐ Duration
```
-0.00085249706171453
+0.0008404849795624614
```
@@ -2406,7 +2406,7 @@ tests/test_bis.py:39: AssertionError
๐ Duration
```
-0.00034957192838191986
+0.0003511479590088129
```
@@ -2454,7 +2454,7 @@ passed
๐ Duration
```
-0.0003057200228795409
+0.0002964589511975646
```
@@ -2477,7 +2477,7 @@ passed
๐ Duration
```
-0.0007851339178159833
+0.0007416789885610342
```
@@ -2568,7 +2568,7 @@ tests/test_utils_ask_yes_no.py:39: AssertionError
๐ Duration
```
-0.00020750798285007477
+0.00020276405848562717
```
@@ -2600,7 +2600,7 @@ passed
๐ Duration
```
-0.0003035130212083459
+0.0003008139319717884
```
@@ -2623,7 +2623,7 @@ passed
๐ Duration
```
-0.0006645990069955587
+0.0006369380280375481
```
@@ -2714,7 +2714,7 @@ tests/test_utils_ask_yes_no.py:39: AssertionError
๐ Duration
```
-0.00019032706040889025
+0.00019872200209647417
```
@@ -2746,7 +2746,7 @@ passed
๐ Duration
```
-0.0002969050547108054
+0.0002984999446198344
```
@@ -2769,7 +2769,7 @@ passed
๐ Duration
```
-0.0006326360162347555
+0.0006204540841281414
```
@@ -2860,7 +2860,7 @@ tests/test_utils_ask_yes_no.py:39: AssertionError
๐ Duration
```
-0.00019283092115074396
+0.00019294593948870897
```
diff --git a/ci-reports/markdown/json-tree-view.txt b/ci-reports/markdown/json-tree-view.txt
index b654161bd..eb46deb4e 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: 1752698308.5824902
-โโโ duration: 7.839002370834351
+โโโ created: 1752698698.795222
+โโโ duration: 7.864633321762085
โโโ exitcode: 1
โโโ root: /workspace/tligui_y/slic
โโโ environment
@@ -550,13 +550,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0007037919713184237
+โ โ โ โโโ duration: 0.000728212995454669
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0007558580255135894
+โ โ โ โโโ duration: 0.0007731140358373523
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0002886729780584574
+โ โ โโโ duration: 0.0002947719767689705
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -574,13 +574,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00033423397690057755
+โ โ โ โโโ duration: 0.00033657101448625326
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006598670734092593
+โ โ โ โโโ duration: 0.0006885189795866609
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001871950225904584
+โ โ โโโ duration: 0.00017817795742303133
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -598,10 +598,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003207280533388257
+โ โ โ โโโ duration: 0.00031439505983144045
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00085249706171453
+โ โ โ โโโ duration: 0.0008404849795624614
โ โ โ โโโ 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.00034957192838191986
+โ โ โโโ duration: 0.0003511479590088129
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -670,13 +670,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003952010301873088
+โ โ โ โโโ duration: 0.00039159704465419054
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006481800228357315
+โ โ โ โโโ duration: 0.0006794279906898737
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00018137996084988117
+โ โ โโโ duration: 0.00020135811064392328
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -694,13 +694,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00031902105547487736
+โ โ โ โโโ duration: 0.00032915198244154453
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005852420581504703
+โ โ โ โโโ duration: 0.0005755119491368532
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016825995407998562
+โ โ โโโ duration: 0.0001674939412623644
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -719,13 +719,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003196150064468384
+โ โ โ โโโ duration: 0.0003110909601673484
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005704789655283093
+โ โ โ โโโ duration: 0.0005377170164138079
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017062400002032518
+โ โ โโโ duration: 0.00016055605374276638
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -743,13 +743,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003098410088568926
+โ โ โ โโโ duration: 0.00030378601513803005
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0008056990336626768
+โ โ โ โโโ duration: 0.000617502024397254
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00022883201017975807
+โ โ โโโ duration: 0.00016697600949555635
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -767,13 +767,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00032306392677128315
+โ โ โ โโโ duration: 0.0002990060020238161
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005450349999591708
+โ โ โ โโโ duration: 0.0004967089043930173
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00018090603407472372
+โ โ โโโ duration: 0.0001661679707467556
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -791,13 +791,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003113370621576905
+โ โ โ โโโ duration: 0.00031053496059030294
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005036729853600264
+โ โ โ โโโ duration: 0.0004712491063401103
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016207294538617134
+โ โ โโโ duration: 0.00015813193749636412
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -815,13 +815,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003060160670429468
+โ โ โ โโโ duration: 0.00030309101566672325
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004864820512011647
+โ โ โ โโโ duration: 0.0004913520533591509
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017119699623435736
+โ โ โโโ duration: 0.0001573910703882575
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -839,13 +839,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.000283197034150362
+โ โ โ โโโ duration: 0.0002955369418486953
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006318679079413414
+โ โ โ โโโ duration: 0.000575249083340168
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016621092800050974
+โ โ โโโ duration: 0.0001707269111648202
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -863,13 +863,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003104899078607559
+โ โ โ โโโ duration: 0.0003058440051972866
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005325040547177196
+โ โ โ โโโ duration: 0.0004895239835605025
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016622303519397974
+โ โ โโโ duration: 0.000158025068230927
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -887,13 +887,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002977189142256975
+โ โ โ โโโ duration: 0.00029913103207945824
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004996811039745808
+โ โ โ โโโ duration: 0.00047800003085285425
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016119400970637798
+โ โ โโโ duration: 0.00015836907550692558
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_bis.py::test_ask_yes_no_ctrl_c
@@ -906,13 +906,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00011571601498872042
+โ โ โ โโโ duration: 0.00011157593689858913
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004821360344067216
+โ โ โ โโโ duration: 0.00046545197255909443
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00011097698006778955
+โ โ โโโ duration: 0.00011480902321636677
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_bis.py::test_ask_yes_no_ctrl_d
@@ -928,13 +928,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00021746894344687462
+โ โ โ โโโ duration: 0.00022836308926343918
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.000585290021263063
+โ โ โ โโโ duration: 0.0014829320134595037
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00015276705380529165
+โ โ โโโ duration: 0.00015924801118671894
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_bis.py::test_ask_yes_no_ctrl_d
@@ -950,13 +950,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002339840866625309
+โ โ โ โโโ duration: 0.00024345202837139368
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004730510991066694
+โ โ โ โโโ duration: 0.0004944649990648031
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00015891599468886852
+โ โ โโโ duration: 0.00015229894779622555
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -974,13 +974,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003135529113933444
+โ โ โ โโโ duration: 0.0003233900060877204
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005219019949436188
+โ โ โ โโโ duration: 0.000499460962601006
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016945693641901016
+โ โ โโโ duration: 0.00015945301856845617
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -998,13 +998,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.000314687960781157
+โ โ โ โโโ duration: 0.00031318410765379667
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004911139840260148
+โ โ โ โโโ duration: 0.0004897810285910964
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00015987094957381487
+โ โ โโโ duration: 0.00016666902229189873
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1022,10 +1022,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003057200228795409
+โ โ โ โโโ duration: 0.0002964589511975646
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0007851339178159833
+โ โ โ โโโ duration: 0.0007416789885610342
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path:
@@ -1077,7 +1077,7 @@
โ โ โ
โ โ โ tests/test_utils_ask_yes_no.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.00020750798285007477
+โ โ โโโ duration: 0.00020276405848562717
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1095,13 +1095,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00032102596014738083
+โ โ โ โโโ duration: 0.00031884200870990753
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005126229953020811
+โ โ โ โโโ duration: 0.0005024400306865573
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016039505135267973
+โ โ โโโ duration: 0.00016747298650443554
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1119,13 +1119,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003000389551743865
+โ โ โ โโโ duration: 0.0003023089375346899
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005249199457466602
+โ โ โ โโโ duration: 0.0005167240742594004
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016049295663833618
+โ โ โโโ duration: 0.0001710199285298586
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1144,13 +1144,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00031542510259896517
+โ โ โ โโโ duration: 0.0003098259912803769
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005043820710852742
+โ โ โ โโโ duration: 0.000500500900670886
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017000699881464243
+โ โ โโโ duration: 0.00016564596444368362
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1168,13 +1168,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030182499904185534
+โ โ โ โโโ duration: 0.00030039099510759115
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0012032570084556937
+โ โ โ โโโ duration: 0.0006026090122759342
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017886899877339602
+โ โ โโโ duration: 0.00016905099619179964
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1192,13 +1192,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003042209427803755
+โ โ โ โโโ duration: 0.0003145589726045728
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005077290115877986
+โ โ โ โโโ duration: 0.0004692389629781246
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001615869114175439
+โ โ โโโ duration: 0.00017700798343867064
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1216,10 +1216,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003035130212083459
+โ โ โ โโโ duration: 0.0003008139319717884
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006645990069955587
+โ โ โ โโโ duration: 0.0006369380280375481
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path:
@@ -1271,7 +1271,7 @@
โ โ โ
โ โ โ tests/test_utils_ask_yes_no.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.00019032706040889025
+โ โ โโโ duration: 0.00019872200209647417
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1289,13 +1289,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00031469203531742096
+โ โ โ โโโ duration: 0.0003113200655207038
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005155979888513684
+โ โ โ โโโ duration: 0.000509094912558794
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016175198834389448
+โ โ โโโ duration: 0.00016040599439293146
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1313,13 +1313,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00029614800587296486
+โ โ โ โโโ duration: 0.000291300006210804
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004879060434177518
+โ โ โ โโโ duration: 0.00047895300667732954
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016004196368157864
+โ โ โโโ duration: 0.00016290706116706133
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1337,10 +1337,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002969050547108054
+โ โ โ โโโ duration: 0.0002984999446198344
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006326360162347555
+โ โ โ โโโ duration: 0.0006204540841281414
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path:
@@ -1392,7 +1392,7 @@
โ โ โ
โ โ โ tests/test_utils_ask_yes_no.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.00019283092115074396
+โ โ โโโ duration: 0.00019294593948870897
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1410,13 +1410,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003162330249324441
+โ โ โ โโโ duration: 0.00031948299147188663
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005078059621155262
+โ โ โ โโโ duration: 0.0005042169941589236
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00018223596271127462
+โ โ โโโ duration: 0.0001790180103853345
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c
@@ -1429,13 +1429,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0001152919139713049
+โ โ โ โโโ duration: 0.00011442694813013077
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00048627995420247316
+โ โ โ โโโ duration: 0.0004888389958068728
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00010921596549451351
+โ โ โโโ duration: 0.00010713597293943167
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d
@@ -1451,13 +1451,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030350498855113983
+โ โ โ โโโ duration: 0.0002326329704374075
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005084839649498463
+โ โ โ โโโ duration: 0.0004958059871569276
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001451210118830204
+โ โ โโโ duration: 0.00014571810606867075
โ โ โโโ outcome: passed
โ โโโ -
โ โโโ nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d
@@ -1473,13 +1473,13 @@
โ โ โโโ slic
โ โ โโโ
โ โโโ setup
-โ โ โโโ duration: 0.00023097696248441935
+โ โ โโโ duration: 0.00022953411098569632
โ โ โโโ outcome: passed
โ โโโ call
-โ โ โโโ duration: 0.0005941510898992419
+โ โ โโโ duration: 0.0005715680308640003
โ โ โโโ outcome: passed
โ โโโ teardown
-โ โโโ duration: 0.00014371902216225863
+โ โโโ duration: 0.00014964002184569836
โ โโโ outcome: passed
โโโ warnings
โโโ -
diff --git a/ci-reports/markdown/pytest-report.json b/ci-reports/markdown/pytest-report.json
index abac7b0c6..188ac8341 100644
--- a/ci-reports/markdown/pytest-report.json
+++ b/ci-reports/markdown/pytest-report.json
@@ -1 +1 @@
-{"created": 1752698308.5824902, "duration": 7.839002370834351, "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.0007037919713184237, "outcome": "passed"}, "call": {"duration": 0.0007558580255135894, "outcome": "passed"}, "teardown": {"duration": 0.0002886729780584574, "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.00033423397690057755, "outcome": "passed"}, "call": {"duration": 0.0006598670734092593, "outcome": "passed"}, "teardown": {"duration": 0.0001871950225904584, "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.0003207280533388257, "outcome": "passed"}, "call": {"duration": 0.00085249706171453, "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.00034957192838191986, "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.0003952010301873088, "outcome": "passed"}, "call": {"duration": 0.0006481800228357315, "outcome": "passed"}, "teardown": {"duration": 0.00018137996084988117, "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.00031902105547487736, "outcome": "passed"}, "call": {"duration": 0.0005852420581504703, "outcome": "passed"}, "teardown": {"duration": 0.00016825995407998562, "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.0003196150064468384, "outcome": "passed"}, "call": {"duration": 0.0005704789655283093, "outcome": "passed"}, "teardown": {"duration": 0.00017062400002032518, "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.0003098410088568926, "outcome": "passed"}, "call": {"duration": 0.0008056990336626768, "outcome": "passed"}, "teardown": {"duration": 0.00022883201017975807, "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.00032306392677128315, "outcome": "passed"}, "call": {"duration": 0.0005450349999591708, "outcome": "passed"}, "teardown": {"duration": 0.00018090603407472372, "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.0003113370621576905, "outcome": "passed"}, "call": {"duration": 0.0005036729853600264, "outcome": "passed"}, "teardown": {"duration": 0.00016207294538617134, "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.0003060160670429468, "outcome": "passed"}, "call": {"duration": 0.0004864820512011647, "outcome": "passed"}, "teardown": {"duration": 0.00017119699623435736, "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.000283197034150362, "outcome": "passed"}, "call": {"duration": 0.0006318679079413414, "outcome": "passed"}, "teardown": {"duration": 0.00016621092800050974, "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.0003104899078607559, "outcome": "passed"}, "call": {"duration": 0.0005325040547177196, "outcome": "passed"}, "teardown": {"duration": 0.00016622303519397974, "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.0002977189142256975, "outcome": "passed"}, "call": {"duration": 0.0004996811039745808, "outcome": "passed"}, "teardown": {"duration": 0.00016119400970637798, "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.00011571601498872042, "outcome": "passed"}, "call": {"duration": 0.0004821360344067216, "outcome": "passed"}, "teardown": {"duration": 0.00011097698006778955, "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.00021746894344687462, "outcome": "passed"}, "call": {"duration": 0.000585290021263063, "outcome": "passed"}, "teardown": {"duration": 0.00015276705380529165, "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.0002339840866625309, "outcome": "passed"}, "call": {"duration": 0.0004730510991066694, "outcome": "passed"}, "teardown": {"duration": 0.00015891599468886852, "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.0003135529113933444, "outcome": "passed"}, "call": {"duration": 0.0005219019949436188, "outcome": "passed"}, "teardown": {"duration": 0.00016945693641901016, "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.000314687960781157, "outcome": "passed"}, "call": {"duration": 0.0004911139840260148, "outcome": "passed"}, "teardown": {"duration": 0.00015987094957381487, "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.0003057200228795409, "outcome": "passed"}, "call": {"duration": 0.0007851339178159833, "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.00020750798285007477, "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.00032102596014738083, "outcome": "passed"}, "call": {"duration": 0.0005126229953020811, "outcome": "passed"}, "teardown": {"duration": 0.00016039505135267973, "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.0003000389551743865, "outcome": "passed"}, "call": {"duration": 0.0005249199457466602, "outcome": "passed"}, "teardown": {"duration": 0.00016049295663833618, "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.00031542510259896517, "outcome": "passed"}, "call": {"duration": 0.0005043820710852742, "outcome": "passed"}, "teardown": {"duration": 0.00017000699881464243, "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.00030182499904185534, "outcome": "passed"}, "call": {"duration": 0.0012032570084556937, "outcome": "passed"}, "teardown": {"duration": 0.00017886899877339602, "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.0003042209427803755, "outcome": "passed"}, "call": {"duration": 0.0005077290115877986, "outcome": "passed"}, "teardown": {"duration": 0.0001615869114175439, "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.0003035130212083459, "outcome": "passed"}, "call": {"duration": 0.0006645990069955587, "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.00019032706040889025, "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.00031469203531742096, "outcome": "passed"}, "call": {"duration": 0.0005155979888513684, "outcome": "passed"}, "teardown": {"duration": 0.00016175198834389448, "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.00029614800587296486, "outcome": "passed"}, "call": {"duration": 0.0004879060434177518, "outcome": "passed"}, "teardown": {"duration": 0.00016004196368157864, "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.0002969050547108054, "outcome": "passed"}, "call": {"duration": 0.0006326360162347555, "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.00019283092115074396, "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.0003162330249324441, "outcome": "passed"}, "call": {"duration": 0.0005078059621155262, "outcome": "passed"}, "teardown": {"duration": 0.00018223596271127462, "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.0001152919139713049, "outcome": "passed"}, "call": {"duration": 0.00048627995420247316, "outcome": "passed"}, "teardown": {"duration": 0.00010921596549451351, "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.00030350498855113983, "outcome": "passed"}, "call": {"duration": 0.0005084839649498463, "outcome": "passed"}, "teardown": {"duration": 0.0001451210118830204, "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.00023097696248441935, "outcome": "passed"}, "call": {"duration": 0.0005941510898992419, "outcome": "passed"}, "teardown": {"duration": 0.00014371902216225863, "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": 1752698698.795222, "duration": 7.864633321762085, "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.000728212995454669, "outcome": "passed"}, "call": {"duration": 0.0007731140358373523, "outcome": "passed"}, "teardown": {"duration": 0.0002947719767689705, "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.00033657101448625326, "outcome": "passed"}, "call": {"duration": 0.0006885189795866609, "outcome": "passed"}, "teardown": {"duration": 0.00017817795742303133, "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.00031439505983144045, "outcome": "passed"}, "call": {"duration": 0.0008404849795624614, "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.0003511479590088129, "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.00039159704465419054, "outcome": "passed"}, "call": {"duration": 0.0006794279906898737, "outcome": "passed"}, "teardown": {"duration": 0.00020135811064392328, "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.00032915198244154453, "outcome": "passed"}, "call": {"duration": 0.0005755119491368532, "outcome": "passed"}, "teardown": {"duration": 0.0001674939412623644, "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.0003110909601673484, "outcome": "passed"}, "call": {"duration": 0.0005377170164138079, "outcome": "passed"}, "teardown": {"duration": 0.00016055605374276638, "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.00030378601513803005, "outcome": "passed"}, "call": {"duration": 0.000617502024397254, "outcome": "passed"}, "teardown": {"duration": 0.00016697600949555635, "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.0002990060020238161, "outcome": "passed"}, "call": {"duration": 0.0004967089043930173, "outcome": "passed"}, "teardown": {"duration": 0.0001661679707467556, "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.00031053496059030294, "outcome": "passed"}, "call": {"duration": 0.0004712491063401103, "outcome": "passed"}, "teardown": {"duration": 0.00015813193749636412, "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.00030309101566672325, "outcome": "passed"}, "call": {"duration": 0.0004913520533591509, "outcome": "passed"}, "teardown": {"duration": 0.0001573910703882575, "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.0002955369418486953, "outcome": "passed"}, "call": {"duration": 0.000575249083340168, "outcome": "passed"}, "teardown": {"duration": 0.0001707269111648202, "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.0003058440051972866, "outcome": "passed"}, "call": {"duration": 0.0004895239835605025, "outcome": "passed"}, "teardown": {"duration": 0.000158025068230927, "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.00029913103207945824, "outcome": "passed"}, "call": {"duration": 0.00047800003085285425, "outcome": "passed"}, "teardown": {"duration": 0.00015836907550692558, "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.00011157593689858913, "outcome": "passed"}, "call": {"duration": 0.00046545197255909443, "outcome": "passed"}, "teardown": {"duration": 0.00011480902321636677, "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.00022836308926343918, "outcome": "passed"}, "call": {"duration": 0.0014829320134595037, "outcome": "passed"}, "teardown": {"duration": 0.00015924801118671894, "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.00024345202837139368, "outcome": "passed"}, "call": {"duration": 0.0004944649990648031, "outcome": "passed"}, "teardown": {"duration": 0.00015229894779622555, "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.0003233900060877204, "outcome": "passed"}, "call": {"duration": 0.000499460962601006, "outcome": "passed"}, "teardown": {"duration": 0.00015945301856845617, "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.00031318410765379667, "outcome": "passed"}, "call": {"duration": 0.0004897810285910964, "outcome": "passed"}, "teardown": {"duration": 0.00016666902229189873, "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.0002964589511975646, "outcome": "passed"}, "call": {"duration": 0.0007416789885610342, "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.00020276405848562717, "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.00031884200870990753, "outcome": "passed"}, "call": {"duration": 0.0005024400306865573, "outcome": "passed"}, "teardown": {"duration": 0.00016747298650443554, "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.0003023089375346899, "outcome": "passed"}, "call": {"duration": 0.0005167240742594004, "outcome": "passed"}, "teardown": {"duration": 0.0001710199285298586, "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.0003098259912803769, "outcome": "passed"}, "call": {"duration": 0.000500500900670886, "outcome": "passed"}, "teardown": {"duration": 0.00016564596444368362, "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.00030039099510759115, "outcome": "passed"}, "call": {"duration": 0.0006026090122759342, "outcome": "passed"}, "teardown": {"duration": 0.00016905099619179964, "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.0003145589726045728, "outcome": "passed"}, "call": {"duration": 0.0004692389629781246, "outcome": "passed"}, "teardown": {"duration": 0.00017700798343867064, "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.0003008139319717884, "outcome": "passed"}, "call": {"duration": 0.0006369380280375481, "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.00019872200209647417, "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.0003113200655207038, "outcome": "passed"}, "call": {"duration": 0.000509094912558794, "outcome": "passed"}, "teardown": {"duration": 0.00016040599439293146, "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.000291300006210804, "outcome": "passed"}, "call": {"duration": 0.00047895300667732954, "outcome": "passed"}, "teardown": {"duration": 0.00016290706116706133, "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.0002984999446198344, "outcome": "passed"}, "call": {"duration": 0.0006204540841281414, "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.00019294593948870897, "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.00031948299147188663, "outcome": "passed"}, "call": {"duration": 0.0005042169941589236, "outcome": "passed"}, "teardown": {"duration": 0.0001790180103853345, "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.00011442694813013077, "outcome": "passed"}, "call": {"duration": 0.0004888389958068728, "outcome": "passed"}, "teardown": {"duration": 0.00010713597293943167, "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.0002326329704374075, "outcome": "passed"}, "call": {"duration": 0.0004958059871569276, "outcome": "passed"}, "teardown": {"duration": 0.00014571810606867075, "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.00022953411098569632, "outcome": "passed"}, "call": {"duration": 0.0005715680308640003, "outcome": "passed"}, "teardown": {"duration": 0.00014964002184569836, "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