diff --git a/ci-reports/markdown/TEST-REPORT.md b/ci-reports/markdown/TEST-REPORT.md
index 44e4acc5..993fd353 100644
--- a/ci-reports/markdown/TEST-REPORT.md
+++ b/ci-reports/markdown/TEST-REPORT.md
@@ -1,8 +1,8 @@
# ๐งช Test Report
-*Generated on 2025-07-16 14:37:58*
+*Generated on 2025-07-16 14:40:45*
## ๐งพ General Info
-- **duration**: 7.815115213394165
+- **duration**: 7.737807512283325
- **root**: /workspace/tligui_y/slic
- **environment**:
@@ -38,7 +38,7 @@
๐ Duration
```
-0.0007137260399758816
+0.0007160520181059837
```
@@ -61,7 +61,7 @@ passed
๐ Duration
```
-0.000728811020962894
+0.0007250549970194697
```
@@ -84,7 +84,7 @@ passed
๐ Duration
```
-0.0002848230069503188
+0.0003067399375140667
```
@@ -116,7 +116,7 @@ passed
๐ Duration
```
-0.0003142509376630187
+0.0003208940615877509
```
@@ -139,7 +139,7 @@ passed
๐ Duration
```
-0.0006815730594098568
+0.0006743069970980287
```
@@ -162,7 +162,7 @@ passed
๐ Duration
```
-0.00016905390657484531
+0.00017449597362428904
```
@@ -194,7 +194,7 @@ passed
๐ Duration
```
-0.0003898610593751073
+0.0003858319250866771
```
@@ -217,7 +217,7 @@ passed
๐ Duration
```
-0.0006726799765601754
+0.0006664349930360913
```
@@ -240,7 +240,7 @@ passed
๐ Duration
```
-0.00018999597523361444
+0.00017206196207553148
```
@@ -272,7 +272,7 @@ passed
๐ Duration
```
-0.0003163570072501898
+0.00031197303906083107
```
@@ -295,7 +295,7 @@ passed
๐ Duration
```
-0.0005640749586746097
+0.0005702440394088626
```
@@ -318,7 +318,7 @@ passed
๐ Duration
```
-0.0001643759896978736
+0.0001686060568317771
```
@@ -350,7 +350,7 @@ passed
๐ Duration
```
-0.0003009799402207136
+0.0003138229949399829
```
@@ -373,7 +373,7 @@ passed
๐ Duration
```
-0.000517964013852179
+0.0005111739737913013
```
@@ -396,7 +396,7 @@ passed
๐ Duration
```
-0.00016163301188498735
+0.00016946299001574516
```
@@ -428,7 +428,7 @@ passed
๐ Duration
```
-0.00029215309768915176
+0.0002882849657908082
```
@@ -451,7 +451,7 @@ passed
๐ Duration
```
-0.0006115869618952274
+0.000665167928673327
```
@@ -474,7 +474,7 @@ passed
๐ Duration
```
-0.0001761680468916893
+0.00016105500981211662
```
@@ -506,7 +506,7 @@ passed
๐ Duration
```
-0.0002933599753305316
+0.00030142697505652905
```
@@ -529,7 +529,7 @@ passed
๐ Duration
```
-0.000495307962410152
+0.0004835679428651929
```
@@ -552,7 +552,7 @@ passed
๐ Duration
```
-0.0001557399518787861
+0.00015809503383934498
```
@@ -584,7 +584,7 @@ passed
๐ Duration
```
-0.00028536992613226175
+0.00028797995764762163
```
@@ -607,7 +607,7 @@ passed
๐ Duration
```
-0.0004849740071222186
+0.0004926660330966115
```
@@ -630,7 +630,7 @@ passed
๐ Duration
```
-0.00015757698565721512
+0.0001569458981975913
```
@@ -662,7 +662,7 @@ passed
๐ Duration
```
-0.0002993149682879448
+0.00029081699904054403
```
@@ -685,7 +685,7 @@ passed
๐ Duration
```
-0.0005030690226703882
+0.0004964430117979646
```
@@ -708,7 +708,7 @@ passed
๐ Duration
```
-0.00015940098091959953
+0.00018093897961080074
```
@@ -740,7 +740,7 @@ passed
๐ Duration
```
-0.0002872429322451353
+0.00029698899015784264
```
@@ -763,7 +763,7 @@ passed
๐ Duration
```
-0.0005785139510408044
+0.0005889739841222763
```
@@ -786,7 +786,7 @@ passed
๐ Duration
```
-0.00016549997963011265
+0.0001594889909029007
```
@@ -818,7 +818,7 @@ passed
๐ Duration
```
-0.0002940049162134528
+0.00029549107421189547
```
@@ -841,7 +841,7 @@ passed
๐ Duration
```
-0.0005028340965509415
+0.0004834759747609496
```
@@ -864,7 +864,7 @@ passed
๐ Duration
```
-0.00015985802747309208
+0.00016133696772158146
```
@@ -896,7 +896,7 @@ passed
๐ Duration
```
-0.00030119798611849546
+0.0002997169503942132
```
@@ -919,7 +919,7 @@ passed
๐ Duration
```
-0.00048487703315913677
+0.0005094290245324373
```
@@ -942,7 +942,7 @@ passed
๐ Duration
```
-0.00015617802273482084
+0.00016634794883430004
```
@@ -981,7 +981,7 @@ passed
๐ Duration
```
-0.00011554302182048559
+0.00012796500232070684
```
@@ -1004,7 +1004,7 @@ passed
๐ Duration
```
-0.00047912506852298975
+0.00046397000551223755
```
@@ -1027,7 +1027,7 @@ passed
๐ Duration
```
-0.00011209305375814438
+0.0001083100214600563
```
@@ -1067,7 +1067,7 @@ passed
๐ Duration
```
-0.0002166458871215582
+0.00022806297056376934
```
@@ -1090,7 +1090,7 @@ passed
๐ Duration
```
-0.0008346439572051167
+0.0006240620277822018
```
@@ -1113,7 +1113,7 @@ passed
๐ Duration
```
-0.0004261900903657079
+0.0001400659093633294
```
@@ -1145,7 +1145,7 @@ passed
๐ Duration
```
-0.0006868179189041257
+0.00022361299488693476
```
@@ -1168,7 +1168,7 @@ passed
๐ Duration
```
-0.000748171005398035
+0.0004876710008829832
```
@@ -1191,7 +1191,7 @@ passed
๐ Duration
```
-0.00016141007654368877
+0.00015377404633909464
```
@@ -1239,7 +1239,7 @@ passed
๐ Duration
```
-0.00031220808159559965
+0.0003147450042888522
```
@@ -1262,7 +1262,7 @@ passed
๐ Duration
```
-0.0005392530001699924
+0.000528087024576962
```
@@ -1285,7 +1285,7 @@ passed
๐ Duration
```
-0.0001786929788067937
+0.00017071503680199385
```
@@ -1317,7 +1317,7 @@ passed
๐ Duration
```
-0.00032137695234268904
+0.00031266501173377037
```
@@ -1340,7 +1340,7 @@ passed
๐ Duration
```
-0.0005129650235176086
+0.0004914950113743544
```
@@ -1363,7 +1363,7 @@ passed
๐ Duration
```
-0.0001608530292287469
+0.00017083203420042992
```
@@ -1395,7 +1395,7 @@ passed
๐ Duration
```
-0.0003159809857606888
+0.0003069150261580944
```
@@ -1418,7 +1418,7 @@ passed
๐ Duration
```
-0.0004953630268573761
+0.0005154400132596493
```
@@ -1441,7 +1441,7 @@ passed
๐ Duration
```
-0.00016909302212297916
+0.0001695400569587946
```
@@ -1473,7 +1473,7 @@ passed
๐ Duration
```
-0.00029973697382956743
+0.00030094501562416553
```
@@ -1496,7 +1496,7 @@ passed
๐ Duration
```
-0.0005246660439297557
+0.0005216989666223526
```
@@ -1519,7 +1519,7 @@ passed
๐ Duration
```
-0.0001614170614629984
+0.00016792607493698597
```
@@ -1551,7 +1551,7 @@ passed
๐ Duration
```
-0.000301048974506557
+0.00030265701934695244
```
@@ -1574,7 +1574,7 @@ passed
๐ Duration
```
-0.0005023060366511345
+0.0005048490129411221
```
@@ -1597,7 +1597,7 @@ passed
๐ Duration
```
-0.00017172005027532578
+0.00016513897571712732
```
@@ -1629,7 +1629,7 @@ passed
๐ Duration
```
-0.0002887760056182742
+0.0002989950589835644
```
@@ -1652,7 +1652,7 @@ passed
๐ Duration
```
-0.00060644606128335
+0.0011737110326066613
```
@@ -1675,7 +1675,7 @@ passed
๐ Duration
```
-0.00016553490422666073
+0.00017919705715030432
```
@@ -1707,7 +1707,7 @@ passed
๐ Duration
```
-0.0003032139502465725
+0.0003026840277016163
```
@@ -1730,7 +1730,7 @@ passed
๐ Duration
```
-0.0004816800355911255
+0.0005017380462959409
```
@@ -1753,7 +1753,7 @@ passed
๐ Duration
```
-0.00016134907491505146
+0.00017080409452319145
```
@@ -1785,7 +1785,7 @@ passed
๐ Duration
```
-0.00030450301710516214
+0.00032245100010186434
```
@@ -1808,7 +1808,7 @@ passed
๐ Duration
```
-0.00050551095046103
+0.0004954109899699688
```
@@ -1831,7 +1831,7 @@ passed
๐ Duration
```
-0.00015850900672376156
+0.00017201399896293879
```
@@ -1863,7 +1863,7 @@ passed
๐ Duration
```
-0.0003039210569113493
+0.00030201999470591545
```
@@ -1886,7 +1886,7 @@ passed
๐ Duration
```
-0.00048344407696276903
+0.0005045810248702765
```
@@ -1909,7 +1909,7 @@ passed
๐ Duration
```
-0.0001657690154388547
+0.00015682901721447706
```
@@ -1941,7 +1941,7 @@ passed
๐ Duration
```
-0.00029279105365276337
+0.0003111449768766761
```
@@ -1964,7 +1964,7 @@ passed
๐ Duration
```
-0.0005097270477563143
+0.00051101204007864
```
@@ -1987,7 +1987,7 @@ passed
๐ Duration
```
-0.00016407703515142202
+0.000166199984960258
```
@@ -2026,7 +2026,7 @@ passed
๐ Duration
```
-0.00011077697854489088
+0.00012495601549744606
```
@@ -2049,7 +2049,7 @@ passed
๐ Duration
```
-0.0004717620322480798
+0.00047244096640497446
```
@@ -2072,7 +2072,7 @@ passed
๐ Duration
```
-0.00010798894800245762
+0.00010845903307199478
```
@@ -2112,7 +2112,7 @@ passed
๐ Duration
```
-0.0002176279667764902
+0.0002344310050830245
```
@@ -2135,7 +2135,7 @@ passed
๐ Duration
```
-0.00048592896200716496
+0.000505586969666183
```
@@ -2158,7 +2158,7 @@ passed
๐ Duration
```
-0.0001352380495518446
+0.00013757403939962387
```
@@ -2190,7 +2190,7 @@ passed
๐ Duration
```
-0.00021206296514719725
+0.00021879293490201235
```
@@ -2213,7 +2213,7 @@ passed
๐ Duration
```
-0.0005850569577887654
+0.0005970080383121967
```
@@ -2236,7 +2236,7 @@ passed
๐ Duration
```
-0.00014444696716964245
+0.00013965205289423466
```
@@ -2292,7 +2292,7 @@ passed
๐ Duration
```
-0.00030272500589489937
+0.00032871903385967016
```
@@ -2315,7 +2315,7 @@ passed
๐ Duration
```
-0.0008524920558556914
+0.0008948569884523749
```
@@ -2406,7 +2406,7 @@ tests/test_bis.py:39: AssertionError
๐ Duration
```
-0.00034861499443650246
+0.000344781088642776
```
@@ -2454,7 +2454,7 @@ passed
๐ Duration
```
-0.0002891209442168474
+0.0003017449053004384
```
@@ -2477,7 +2477,7 @@ passed
๐ Duration
```
-0.0007910419953987002
+0.0007725829491391778
```
@@ -2568,7 +2568,7 @@ tests/test_utils_ask_yes_no.py:39: AssertionError
๐ Duration
```
-0.00020114704966545105
+0.00020279991440474987
```
@@ -2600,7 +2600,7 @@ passed
๐ Duration
```
-0.00028757599648088217
+0.0003088529920205474
```
@@ -2623,7 +2623,7 @@ passed
๐ Duration
```
-0.0006359999533742666
+0.0006382470019161701
```
@@ -2714,7 +2714,7 @@ tests/test_utils_ask_yes_no.py:39: AssertionError
๐ Duration
```
-0.0001944029936566949
+0.00018849305342882872
```
@@ -2746,7 +2746,7 @@ passed
๐ Duration
```
-0.0002876219805330038
+0.00030533503741025925
```
@@ -2769,7 +2769,7 @@ passed
๐ Duration
```
-0.0006233809981495142
+0.0006055349949747324
```
@@ -2860,7 +2860,7 @@ tests/test_utils_ask_yes_no.py:39: AssertionError
๐ Duration
```
-0.00019353395327925682
+0.0001999880187213421
```
diff --git a/ci-reports/markdown/json-tree-view.txt b/ci-reports/markdown/json-tree-view.txt
index 80bebb47..2084e22b 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: 1752676676.8520741
-โโโ duration: 7.815115213394165
+โโโ created: 1752676843.9781125
+โโโ duration: 7.737807512283325
โโโ exitcode: 1
โโโ root: /workspace/tligui_y/slic
โโโ environment
@@ -550,13 +550,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0007137260399758816
+โ โ โ โโโ duration: 0.0007160520181059837
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.000728811020962894
+โ โ โ โโโ duration: 0.0007250549970194697
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0002848230069503188
+โ โ โโโ duration: 0.0003067399375140667
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -574,13 +574,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003142509376630187
+โ โ โ โโโ duration: 0.0003208940615877509
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006815730594098568
+โ โ โ โโโ duration: 0.0006743069970980287
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016905390657484531
+โ โ โโโ duration: 0.00017449597362428904
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -598,10 +598,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030272500589489937
+โ โ โ โโโ duration: 0.00032871903385967016
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0008524920558556914
+โ โ โ โโโ duration: 0.0008948569884523749
โ โ โ โโโ 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.00034861499443650246
+โ โ โโโ duration: 0.000344781088642776
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -670,13 +670,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003898610593751073
+โ โ โ โโโ duration: 0.0003858319250866771
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006726799765601754
+โ โ โ โโโ duration: 0.0006664349930360913
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00018999597523361444
+โ โ โโโ duration: 0.00017206196207553148
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -694,13 +694,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003163570072501898
+โ โ โ โโโ duration: 0.00031197303906083107
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005640749586746097
+โ โ โ โโโ duration: 0.0005702440394088626
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001643759896978736
+โ โ โโโ duration: 0.0001686060568317771
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -719,13 +719,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003009799402207136
+โ โ โ โโโ duration: 0.0003138229949399829
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.000517964013852179
+โ โ โ โโโ duration: 0.0005111739737913013
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016163301188498735
+โ โ โโโ duration: 0.00016946299001574516
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -743,13 +743,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00029215309768915176
+โ โ โ โโโ duration: 0.0002882849657908082
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006115869618952274
+โ โ โ โโโ duration: 0.000665167928673327
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001761680468916893
+โ โ โโโ duration: 0.00016105500981211662
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -767,13 +767,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002933599753305316
+โ โ โ โโโ duration: 0.00030142697505652905
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.000495307962410152
+โ โ โ โโโ duration: 0.0004835679428651929
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001557399518787861
+โ โ โโโ duration: 0.00015809503383934498
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -791,13 +791,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00028536992613226175
+โ โ โ โโโ duration: 0.00028797995764762163
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004849740071222186
+โ โ โ โโโ duration: 0.0004926660330966115
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00015757698565721512
+โ โ โโโ duration: 0.0001569458981975913
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -815,13 +815,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002993149682879448
+โ โ โ โโโ duration: 0.00029081699904054403
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005030690226703882
+โ โ โ โโโ duration: 0.0004964430117979646
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00015940098091959953
+โ โ โโโ duration: 0.00018093897961080074
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -839,13 +839,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002872429322451353
+โ โ โ โโโ duration: 0.00029698899015784264
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005785139510408044
+โ โ โ โโโ duration: 0.0005889739841222763
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016549997963011265
+โ โ โโโ duration: 0.0001594889909029007
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -863,13 +863,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002940049162134528
+โ โ โ โโโ duration: 0.00029549107421189547
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005028340965509415
+โ โ โ โโโ duration: 0.0004834759747609496
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00015985802747309208
+โ โ โโโ duration: 0.00016133696772158146
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -887,13 +887,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030119798611849546
+โ โ โ โโโ duration: 0.0002997169503942132
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00048487703315913677
+โ โ โ โโโ duration: 0.0005094290245324373
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00015617802273482084
+โ โ โโโ duration: 0.00016634794883430004
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_bis.py::test_ask_yes_no_ctrl_c
@@ -906,13 +906,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00011554302182048559
+โ โ โ โโโ duration: 0.00012796500232070684
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00047912506852298975
+โ โ โ โโโ duration: 0.00046397000551223755
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00011209305375814438
+โ โ โโโ duration: 0.0001083100214600563
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_bis.py::test_ask_yes_no_ctrl_d
@@ -928,13 +928,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002166458871215582
+โ โ โ โโโ duration: 0.00022806297056376934
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0008346439572051167
+โ โ โ โโโ duration: 0.0006240620277822018
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0004261900903657079
+โ โ โโโ duration: 0.0001400659093633294
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_bis.py::test_ask_yes_no_ctrl_d
@@ -950,13 +950,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0006868179189041257
+โ โ โ โโโ duration: 0.00022361299488693476
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.000748171005398035
+โ โ โ โโโ duration: 0.0004876710008829832
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016141007654368877
+โ โ โโโ duration: 0.00015377404633909464
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -974,13 +974,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00031220808159559965
+โ โ โ โโโ duration: 0.0003147450042888522
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005392530001699924
+โ โ โ โโโ duration: 0.000528087024576962
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001786929788067937
+โ โ โโโ duration: 0.00017071503680199385
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -998,13 +998,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00032137695234268904
+โ โ โ โโโ duration: 0.00031266501173377037
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005129650235176086
+โ โ โ โโโ duration: 0.0004914950113743544
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001608530292287469
+โ โ โโโ duration: 0.00017083203420042992
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1022,10 +1022,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002891209442168474
+โ โ โ โโโ duration: 0.0003017449053004384
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0007910419953987002
+โ โ โ โโโ duration: 0.0007725829491391778
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path:
@@ -1077,7 +1077,7 @@
โ โ โ
โ โ โ tests/test_utils_ask_yes_no.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.00020114704966545105
+โ โ โโโ duration: 0.00020279991440474987
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1095,13 +1095,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003159809857606888
+โ โ โ โโโ duration: 0.0003069150261580944
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004953630268573761
+โ โ โ โโโ duration: 0.0005154400132596493
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016909302212297916
+โ โ โโโ duration: 0.0001695400569587946
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1119,13 +1119,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00029973697382956743
+โ โ โ โโโ duration: 0.00030094501562416553
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005246660439297557
+โ โ โ โโโ duration: 0.0005216989666223526
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001614170614629984
+โ โ โโโ duration: 0.00016792607493698597
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1144,13 +1144,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.000301048974506557
+โ โ โ โโโ duration: 0.00030265701934695244
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005023060366511345
+โ โ โ โโโ duration: 0.0005048490129411221
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017172005027532578
+โ โ โโโ duration: 0.00016513897571712732
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1168,13 +1168,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002887760056182742
+โ โ โ โโโ duration: 0.0002989950589835644
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00060644606128335
+โ โ โ โโโ duration: 0.0011737110326066613
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016553490422666073
+โ โ โโโ duration: 0.00017919705715030432
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1192,13 +1192,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003032139502465725
+โ โ โ โโโ duration: 0.0003026840277016163
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004816800355911255
+โ โ โ โโโ duration: 0.0005017380462959409
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016134907491505146
+โ โ โโโ duration: 0.00017080409452319145
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1216,10 +1216,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00028757599648088217
+โ โ โ โโโ duration: 0.0003088529920205474
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006359999533742666
+โ โ โ โโโ duration: 0.0006382470019161701
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path:
@@ -1271,7 +1271,7 @@
โ โ โ
โ โ โ tests/test_utils_ask_yes_no.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001944029936566949
+โ โ โโโ duration: 0.00018849305342882872
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1289,13 +1289,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030450301710516214
+โ โ โ โโโ duration: 0.00032245100010186434
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00050551095046103
+โ โ โ โโโ duration: 0.0004954109899699688
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00015850900672376156
+โ โ โโโ duration: 0.00017201399896293879
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1313,13 +1313,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003039210569113493
+โ โ โ โโโ duration: 0.00030201999470591545
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00048344407696276903
+โ โ โ โโโ duration: 0.0005045810248702765
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001657690154388547
+โ โ โโโ duration: 0.00015682901721447706
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1337,10 +1337,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002876219805330038
+โ โ โ โโโ duration: 0.00030533503741025925
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006233809981495142
+โ โ โ โโโ duration: 0.0006055349949747324
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path:
@@ -1392,7 +1392,7 @@
โ โ โ
โ โ โ tests/test_utils_ask_yes_no.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.00019353395327925682
+โ โ โโโ duration: 0.0001999880187213421
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1410,13 +1410,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00029279105365276337
+โ โ โ โโโ duration: 0.0003111449768766761
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005097270477563143
+โ โ โ โโโ duration: 0.00051101204007864
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016407703515142202
+โ โ โโโ duration: 0.000166199984960258
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c
@@ -1429,13 +1429,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00011077697854489088
+โ โ โ โโโ duration: 0.00012495601549744606
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004717620322480798
+โ โ โ โโโ duration: 0.00047244096640497446
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00010798894800245762
+โ โ โโโ duration: 0.00010845903307199478
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d
@@ -1451,13 +1451,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002176279667764902
+โ โ โ โโโ duration: 0.0002344310050830245
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00048592896200716496
+โ โ โ โโโ duration: 0.000505586969666183
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001352380495518446
+โ โ โโโ duration: 0.00013757403939962387
โ โ โโโ outcome: passed
โ โโโ -
โ โโโ nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d
@@ -1473,13 +1473,13 @@
โ โ โโโ slic
โ โ โโโ
โ โโโ setup
-โ โ โโโ duration: 0.00021206296514719725
+โ โ โโโ duration: 0.00021879293490201235
โ โ โโโ outcome: passed
โ โโโ call
-โ โ โโโ duration: 0.0005850569577887654
+โ โ โโโ duration: 0.0005970080383121967
โ โ โโโ outcome: passed
โ โโโ teardown
-โ โโโ duration: 0.00014444696716964245
+โ โโโ duration: 0.00013965205289423466
โ โโโ outcome: passed
โโโ warnings
โโโ -
diff --git a/ci-reports/markdown/pytest-report.json b/ci-reports/markdown/pytest-report.json
index 808210ff..982014f5 100644
--- a/ci-reports/markdown/pytest-report.json
+++ b/ci-reports/markdown/pytest-report.json
@@ -1 +1 @@
-{"created": 1752676676.8520741, "duration": 7.815115213394165, "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.0007137260399758816, "outcome": "passed"}, "call": {"duration": 0.000728811020962894, "outcome": "passed"}, "teardown": {"duration": 0.0002848230069503188, "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.0003142509376630187, "outcome": "passed"}, "call": {"duration": 0.0006815730594098568, "outcome": "passed"}, "teardown": {"duration": 0.00016905390657484531, "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.00030272500589489937, "outcome": "passed"}, "call": {"duration": 0.0008524920558556914, "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.00034861499443650246, "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.0003898610593751073, "outcome": "passed"}, "call": {"duration": 0.0006726799765601754, "outcome": "passed"}, "teardown": {"duration": 0.00018999597523361444, "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.0003163570072501898, "outcome": "passed"}, "call": {"duration": 0.0005640749586746097, "outcome": "passed"}, "teardown": {"duration": 0.0001643759896978736, "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.0003009799402207136, "outcome": "passed"}, "call": {"duration": 0.000517964013852179, "outcome": "passed"}, "teardown": {"duration": 0.00016163301188498735, "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.00029215309768915176, "outcome": "passed"}, "call": {"duration": 0.0006115869618952274, "outcome": "passed"}, "teardown": {"duration": 0.0001761680468916893, "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.0002933599753305316, "outcome": "passed"}, "call": {"duration": 0.000495307962410152, "outcome": "passed"}, "teardown": {"duration": 0.0001557399518787861, "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.00028536992613226175, "outcome": "passed"}, "call": {"duration": 0.0004849740071222186, "outcome": "passed"}, "teardown": {"duration": 0.00015757698565721512, "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.0002993149682879448, "outcome": "passed"}, "call": {"duration": 0.0005030690226703882, "outcome": "passed"}, "teardown": {"duration": 0.00015940098091959953, "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.0002872429322451353, "outcome": "passed"}, "call": {"duration": 0.0005785139510408044, "outcome": "passed"}, "teardown": {"duration": 0.00016549997963011265, "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.0002940049162134528, "outcome": "passed"}, "call": {"duration": 0.0005028340965509415, "outcome": "passed"}, "teardown": {"duration": 0.00015985802747309208, "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.00030119798611849546, "outcome": "passed"}, "call": {"duration": 0.00048487703315913677, "outcome": "passed"}, "teardown": {"duration": 0.00015617802273482084, "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.00011554302182048559, "outcome": "passed"}, "call": {"duration": 0.00047912506852298975, "outcome": "passed"}, "teardown": {"duration": 0.00011209305375814438, "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.0002166458871215582, "outcome": "passed"}, "call": {"duration": 0.0008346439572051167, "outcome": "passed"}, "teardown": {"duration": 0.0004261900903657079, "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.0006868179189041257, "outcome": "passed"}, "call": {"duration": 0.000748171005398035, "outcome": "passed"}, "teardown": {"duration": 0.00016141007654368877, "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.00031220808159559965, "outcome": "passed"}, "call": {"duration": 0.0005392530001699924, "outcome": "passed"}, "teardown": {"duration": 0.0001786929788067937, "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.00032137695234268904, "outcome": "passed"}, "call": {"duration": 0.0005129650235176086, "outcome": "passed"}, "teardown": {"duration": 0.0001608530292287469, "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.0002891209442168474, "outcome": "passed"}, "call": {"duration": 0.0007910419953987002, "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.00020114704966545105, "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.0003159809857606888, "outcome": "passed"}, "call": {"duration": 0.0004953630268573761, "outcome": "passed"}, "teardown": {"duration": 0.00016909302212297916, "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.00029973697382956743, "outcome": "passed"}, "call": {"duration": 0.0005246660439297557, "outcome": "passed"}, "teardown": {"duration": 0.0001614170614629984, "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.000301048974506557, "outcome": "passed"}, "call": {"duration": 0.0005023060366511345, "outcome": "passed"}, "teardown": {"duration": 0.00017172005027532578, "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.0002887760056182742, "outcome": "passed"}, "call": {"duration": 0.00060644606128335, "outcome": "passed"}, "teardown": {"duration": 0.00016553490422666073, "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.0003032139502465725, "outcome": "passed"}, "call": {"duration": 0.0004816800355911255, "outcome": "passed"}, "teardown": {"duration": 0.00016134907491505146, "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.00028757599648088217, "outcome": "passed"}, "call": {"duration": 0.0006359999533742666, "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.0001944029936566949, "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.00030450301710516214, "outcome": "passed"}, "call": {"duration": 0.00050551095046103, "outcome": "passed"}, "teardown": {"duration": 0.00015850900672376156, "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.0003039210569113493, "outcome": "passed"}, "call": {"duration": 0.00048344407696276903, "outcome": "passed"}, "teardown": {"duration": 0.0001657690154388547, "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.0002876219805330038, "outcome": "passed"}, "call": {"duration": 0.0006233809981495142, "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.00019353395327925682, "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.00029279105365276337, "outcome": "passed"}, "call": {"duration": 0.0005097270477563143, "outcome": "passed"}, "teardown": {"duration": 0.00016407703515142202, "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.00011077697854489088, "outcome": "passed"}, "call": {"duration": 0.0004717620322480798, "outcome": "passed"}, "teardown": {"duration": 0.00010798894800245762, "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.0002176279667764902, "outcome": "passed"}, "call": {"duration": 0.00048592896200716496, "outcome": "passed"}, "teardown": {"duration": 0.0001352380495518446, "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.00021206296514719725, "outcome": "passed"}, "call": {"duration": 0.0005850569577887654, "outcome": "passed"}, "teardown": {"duration": 0.00014444696716964245, "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": 1752676843.9781125, "duration": 7.737807512283325, "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.0007160520181059837, "outcome": "passed"}, "call": {"duration": 0.0007250549970194697, "outcome": "passed"}, "teardown": {"duration": 0.0003067399375140667, "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.0003208940615877509, "outcome": "passed"}, "call": {"duration": 0.0006743069970980287, "outcome": "passed"}, "teardown": {"duration": 0.00017449597362428904, "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.00032871903385967016, "outcome": "passed"}, "call": {"duration": 0.0008948569884523749, "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.000344781088642776, "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.0003858319250866771, "outcome": "passed"}, "call": {"duration": 0.0006664349930360913, "outcome": "passed"}, "teardown": {"duration": 0.00017206196207553148, "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.00031197303906083107, "outcome": "passed"}, "call": {"duration": 0.0005702440394088626, "outcome": "passed"}, "teardown": {"duration": 0.0001686060568317771, "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.0003138229949399829, "outcome": "passed"}, "call": {"duration": 0.0005111739737913013, "outcome": "passed"}, "teardown": {"duration": 0.00016946299001574516, "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.0002882849657908082, "outcome": "passed"}, "call": {"duration": 0.000665167928673327, "outcome": "passed"}, "teardown": {"duration": 0.00016105500981211662, "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.00030142697505652905, "outcome": "passed"}, "call": {"duration": 0.0004835679428651929, "outcome": "passed"}, "teardown": {"duration": 0.00015809503383934498, "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.00028797995764762163, "outcome": "passed"}, "call": {"duration": 0.0004926660330966115, "outcome": "passed"}, "teardown": {"duration": 0.0001569458981975913, "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.00029081699904054403, "outcome": "passed"}, "call": {"duration": 0.0004964430117979646, "outcome": "passed"}, "teardown": {"duration": 0.00018093897961080074, "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.00029698899015784264, "outcome": "passed"}, "call": {"duration": 0.0005889739841222763, "outcome": "passed"}, "teardown": {"duration": 0.0001594889909029007, "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.00029549107421189547, "outcome": "passed"}, "call": {"duration": 0.0004834759747609496, "outcome": "passed"}, "teardown": {"duration": 0.00016133696772158146, "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.0002997169503942132, "outcome": "passed"}, "call": {"duration": 0.0005094290245324373, "outcome": "passed"}, "teardown": {"duration": 0.00016634794883430004, "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.00012796500232070684, "outcome": "passed"}, "call": {"duration": 0.00046397000551223755, "outcome": "passed"}, "teardown": {"duration": 0.0001083100214600563, "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.00022806297056376934, "outcome": "passed"}, "call": {"duration": 0.0006240620277822018, "outcome": "passed"}, "teardown": {"duration": 0.0001400659093633294, "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.00022361299488693476, "outcome": "passed"}, "call": {"duration": 0.0004876710008829832, "outcome": "passed"}, "teardown": {"duration": 0.00015377404633909464, "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.0003147450042888522, "outcome": "passed"}, "call": {"duration": 0.000528087024576962, "outcome": "passed"}, "teardown": {"duration": 0.00017071503680199385, "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.00031266501173377037, "outcome": "passed"}, "call": {"duration": 0.0004914950113743544, "outcome": "passed"}, "teardown": {"duration": 0.00017083203420042992, "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.0003017449053004384, "outcome": "passed"}, "call": {"duration": 0.0007725829491391778, "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.00020279991440474987, "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.0003069150261580944, "outcome": "passed"}, "call": {"duration": 0.0005154400132596493, "outcome": "passed"}, "teardown": {"duration": 0.0001695400569587946, "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.00030094501562416553, "outcome": "passed"}, "call": {"duration": 0.0005216989666223526, "outcome": "passed"}, "teardown": {"duration": 0.00016792607493698597, "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.00030265701934695244, "outcome": "passed"}, "call": {"duration": 0.0005048490129411221, "outcome": "passed"}, "teardown": {"duration": 0.00016513897571712732, "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.0002989950589835644, "outcome": "passed"}, "call": {"duration": 0.0011737110326066613, "outcome": "passed"}, "teardown": {"duration": 0.00017919705715030432, "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.0003026840277016163, "outcome": "passed"}, "call": {"duration": 0.0005017380462959409, "outcome": "passed"}, "teardown": {"duration": 0.00017080409452319145, "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.0003088529920205474, "outcome": "passed"}, "call": {"duration": 0.0006382470019161701, "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.00018849305342882872, "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.00032245100010186434, "outcome": "passed"}, "call": {"duration": 0.0004954109899699688, "outcome": "passed"}, "teardown": {"duration": 0.00017201399896293879, "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.00030201999470591545, "outcome": "passed"}, "call": {"duration": 0.0005045810248702765, "outcome": "passed"}, "teardown": {"duration": 0.00015682901721447706, "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.00030533503741025925, "outcome": "passed"}, "call": {"duration": 0.0006055349949747324, "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.0001999880187213421, "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.0003111449768766761, "outcome": "passed"}, "call": {"duration": 0.00051101204007864, "outcome": "passed"}, "teardown": {"duration": 0.000166199984960258, "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.00012495601549744606, "outcome": "passed"}, "call": {"duration": 0.00047244096640497446, "outcome": "passed"}, "teardown": {"duration": 0.00010845903307199478, "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.0002344310050830245, "outcome": "passed"}, "call": {"duration": 0.000505586969666183, "outcome": "passed"}, "teardown": {"duration": 0.00013757403939962387, "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.00021879293490201235, "outcome": "passed"}, "call": {"duration": 0.0005970080383121967, "outcome": "passed"}, "teardown": {"duration": 0.00013965205289423466, "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