diff --git a/ci-reports/markdown/TEST-REPORT.md b/ci-reports/markdown/TEST-REPORT.md
index df811be8f..e037f343f 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 19:55:35*
+*Generated on 2025-07-16 20:13:58*
## ๐งพ General Info
-- **duration**: 7.8490989208221436
+- **duration**: 8.164735555648804
- **root**: /workspace/tligui_y/slic
- **environment**:
@@ -38,7 +38,7 @@
๐ Duration
```
-0.0007267550099641085
+0.0007074400782585144
```
@@ -61,7 +61,7 @@ passed
๐ Duration
```
-0.0007684959564357996
+0.0007644289871677756
```
@@ -84,7 +84,7 @@ passed
๐ Duration
```
-0.0003046130295842886
+0.00029252609238028526
```
@@ -116,7 +116,7 @@ passed
๐ Duration
```
-0.0003261679084971547
+0.0003203329397365451
```
@@ -139,7 +139,7 @@ passed
๐ Duration
```
-0.0006951650138944387
+0.0007032789289951324
```
@@ -162,7 +162,7 @@ passed
๐ Duration
```
-0.00018244900275021791
+0.00016526191029697657
```
@@ -194,7 +194,7 @@ passed
๐ Duration
```
-0.00042962096631526947
+0.0003815980162471533
```
@@ -217,7 +217,7 @@ passed
๐ Duration
```
-0.0007382819894701242
+0.0006788340397179127
```
@@ -240,7 +240,7 @@ passed
๐ Duration
```
-0.00020329293329268694
+0.0001750619849190116
```
@@ -272,7 +272,7 @@ passed
๐ Duration
```
-0.00036197504960000515
+0.0003217670600861311
```
@@ -295,7 +295,7 @@ passed
๐ Duration
```
-0.0005919779650866985
+0.0005543379811570048
```
@@ -318,7 +318,7 @@ passed
๐ Duration
```
-0.00016161194071173668
+0.00016898999456316233
```
@@ -350,7 +350,7 @@ passed
๐ Duration
```
-0.000305652036331594
+0.00029678805731236935
```
@@ -373,7 +373,7 @@ passed
๐ Duration
```
-0.0005310949636623263
+0.0005114380037412047
```
@@ -396,7 +396,7 @@ passed
๐ Duration
```
-0.00016053789295256138
+0.00016640103422105312
```
@@ -428,7 +428,7 @@ passed
๐ Duration
```
-0.0003016319824382663
+0.0003053180407732725
```
@@ -451,7 +451,7 @@ passed
๐ Duration
```
-0.0006152980495244265
+0.0006527759833261371
```
@@ -474,7 +474,7 @@ passed
๐ Duration
```
-0.0001782439649105072
+0.00017756293527781963
```
@@ -506,7 +506,7 @@ passed
๐ Duration
```
-0.0003004049649462104
+0.00029468198772519827
```
@@ -529,7 +529,7 @@ passed
๐ Duration
```
-0.0005077850073575974
+0.0004901180509477854
```
@@ -552,7 +552,7 @@ passed
๐ Duration
```
-0.00016214605420827866
+0.0001648450270295143
```
@@ -584,7 +584,7 @@ passed
๐ Duration
```
-0.00030899595003575087
+0.0002939660334959626
```
@@ -607,7 +607,7 @@ passed
๐ Duration
```
-0.00048333697486668825
+0.0005000369856134057
```
@@ -630,7 +630,7 @@ passed
๐ Duration
```
-0.00017459096852689981
+0.0001643759896978736
```
@@ -662,7 +662,7 @@ passed
๐ Duration
```
-0.0002873259363695979
+0.00029228103812783957
```
@@ -685,7 +685,7 @@ passed
๐ Duration
```
-0.0004965369589626789
+0.0004882708890363574
```
@@ -708,7 +708,7 @@ passed
๐ Duration
```
-0.00015677197370678186
+0.0001648829784244299
```
@@ -740,7 +740,7 @@ passed
๐ Duration
```
-0.0003038319991901517
+0.0002946830354630947
```
@@ -763,7 +763,7 @@ passed
๐ Duration
```
-0.0005877079674974084
+0.000605081906542182
```
@@ -786,7 +786,7 @@ passed
๐ Duration
```
-0.0001706629991531372
+0.00016677903477102518
```
@@ -818,7 +818,7 @@ passed
๐ Duration
```
-0.0002969109918922186
+0.0003062320174649358
```
@@ -841,7 +841,7 @@ passed
๐ Duration
```
-0.0004924189997836947
+0.00048480695113539696
```
@@ -864,7 +864,7 @@ passed
๐ Duration
```
-0.00015918805729597807
+0.00017515092622488737
```
@@ -896,7 +896,7 @@ passed
๐ Duration
```
-0.0003105109790340066
+0.00029345403891056776
```
@@ -919,7 +919,7 @@ passed
๐ Duration
```
-0.0004906320245936513
+0.0004949260037392378
```
@@ -942,7 +942,7 @@ passed
๐ Duration
```
-0.0001689310884103179
+0.0001620710827410221
```
@@ -981,7 +981,7 @@ passed
๐ Duration
```
-0.0001156999496743083
+0.00011274591088294983
```
@@ -1004,7 +1004,7 @@ passed
๐ Duration
```
-0.000495192944072187
+0.0004915179451927543
```
@@ -1027,7 +1027,7 @@ passed
๐ Duration
```
-0.0001072190934792161
+0.00011277699377387762
```
@@ -1067,7 +1067,7 @@ passed
๐ Duration
```
-0.00022661988623440266
+0.00023289199452847242
```
@@ -1090,7 +1090,7 @@ passed
๐ Duration
```
-0.0005959160625934601
+0.0006340789841488004
```
@@ -1113,7 +1113,7 @@ passed
๐ Duration
```
-0.00013989594299346209
+0.00014853000175207853
```
@@ -1145,7 +1145,7 @@ passed
๐ Duration
```
-0.00022302300203591585
+0.0002176309935748577
```
@@ -1168,7 +1168,7 @@ passed
๐ Duration
```
-0.0004842240596190095
+0.0005046810256317258
```
@@ -1191,7 +1191,7 @@ passed
๐ Duration
```
-0.0001475820317864418
+0.00013920094352215528
```
@@ -1239,7 +1239,7 @@ passed
๐ Duration
```
-0.00031459901947528124
+0.00032227905467152596
```
@@ -1262,7 +1262,7 @@ passed
๐ Duration
```
-0.0005038530798628926
+0.0004982770187780261
```
@@ -1285,7 +1285,7 @@ passed
๐ Duration
```
-0.00016616703942418098
+0.0001608988968655467
```
@@ -1317,7 +1317,7 @@ passed
๐ Duration
```
-0.0003017560811713338
+0.00029247195925563574
```
@@ -1340,7 +1340,7 @@ passed
๐ Duration
```
-0.00048781291116029024
+0.0005053920904174447
```
@@ -1363,7 +1363,7 @@ passed
๐ Duration
```
-0.00016068201512098312
+0.00016060401685535908
```
@@ -1395,7 +1395,7 @@ passed
๐ Duration
```
-0.0003257490461692214
+0.00030776194762438536
```
@@ -1418,7 +1418,7 @@ passed
๐ Duration
```
-0.0005139010027050972
+0.0005245200591161847
```
@@ -1441,7 +1441,7 @@ passed
๐ Duration
```
-0.00017373799346387386
+0.0001676470274105668
```
@@ -1473,7 +1473,7 @@ passed
๐ Duration
```
-0.00029789807740598917
+0.000310160918161273
```
@@ -1496,7 +1496,7 @@ passed
๐ Duration
```
-0.0005271940026432276
+0.000510274083353579
```
@@ -1519,7 +1519,7 @@ passed
๐ Duration
```
-0.0001753109972923994
+0.00017613894306123257
```
@@ -1551,7 +1551,7 @@ passed
๐ Duration
```
-0.00031163706444203854
+0.00029604509472846985
```
@@ -1574,7 +1574,7 @@ passed
๐ Duration
```
-0.0005127439508214593
+0.0005137609550729394
```
@@ -1597,7 +1597,7 @@ passed
๐ Duration
```
-0.00017541705165058374
+0.0001655610976740718
```
@@ -1629,7 +1629,7 @@ passed
๐ Duration
```
-0.0002946739550679922
+0.0003042339812964201
```
@@ -1652,7 +1652,7 @@ passed
๐ Duration
```
-0.0012571659171953797
+0.0005933939246460795
```
@@ -1675,7 +1675,7 @@ passed
๐ Duration
```
-0.0001666840398684144
+0.00016255700029432774
```
@@ -1707,7 +1707,7 @@ passed
๐ Duration
```
-0.00030625099316239357
+0.0003162719076499343
```
@@ -1730,7 +1730,7 @@ passed
๐ Duration
```
-0.00048618402797728777
+0.0005311479326337576
```
@@ -1753,7 +1753,7 @@ passed
๐ Duration
```
-0.00016035709995776415
+0.0001708769705146551
```
@@ -1785,7 +1785,7 @@ passed
๐ Duration
```
-0.0003122070338577032
+0.0003423680318519473
```
@@ -1808,7 +1808,7 @@ passed
๐ Duration
```
-0.0005309480475261807
+0.000498112989589572
```
@@ -1831,7 +1831,7 @@ passed
๐ Duration
```
-0.00016686401795595884
+0.00016041495837271214
```
@@ -1863,7 +1863,7 @@ passed
๐ Duration
```
-0.00031049095559865236
+0.000283082015812397
```
@@ -1886,7 +1886,7 @@ passed
๐ Duration
```
-0.0004858309403061867
+0.0004963249666616321
```
@@ -1909,7 +1909,7 @@ passed
๐ Duration
```
-0.00017353403382003307
+0.00015933497343212366
```
@@ -1941,7 +1941,7 @@ passed
๐ Duration
```
-0.00031298596877604723
+0.0003013190580531955
```
@@ -1964,7 +1964,7 @@ passed
๐ Duration
```
-0.0005270229885354638
+0.000491242972202599
```
@@ -1987,7 +1987,7 @@ passed
๐ Duration
```
-0.00016249495092779398
+0.00016238901298493147
```
@@ -2026,7 +2026,7 @@ passed
๐ Duration
```
-0.00011112005449831486
+0.00012449605856090784
```
@@ -2049,7 +2049,7 @@ passed
๐ Duration
```
-0.000482079922221601
+0.000477908062748611
```
@@ -2072,7 +2072,7 @@ passed
๐ Duration
```
-0.00011480995453894138
+0.00011136604007333517
```
@@ -2112,7 +2112,7 @@ passed
๐ Duration
```
-0.00023661099839955568
+0.00021388591267168522
```
@@ -2135,7 +2135,7 @@ passed
๐ Duration
```
-0.0004849489778280258
+0.0004923739470541477
```
@@ -2158,7 +2158,7 @@ passed
๐ Duration
```
-0.00014986295718699694
+0.00014600693248212337
```
@@ -2190,7 +2190,7 @@ passed
๐ Duration
```
-0.00022196094505488873
+0.00022459891624748707
```
@@ -2213,7 +2213,7 @@ passed
๐ Duration
```
-0.0006136859301477671
+0.0005686340155079961
```
@@ -2236,7 +2236,7 @@ passed
๐ Duration
```
-0.0001536619383841753
+0.00016022403724491596
```
@@ -2292,7 +2292,7 @@ passed
๐ Duration
```
-0.00030169798992574215
+0.0003005559556186199
```
@@ -2315,7 +2315,7 @@ passed
๐ Duration
```
-0.0008403689134865999
+0.0008435170166194439
```
@@ -2406,7 +2406,7 @@ tests/test_bis.py:39: AssertionError
๐ Duration
```
-0.00037362193688750267
+0.00033029098995029926
```
@@ -2454,7 +2454,7 @@ passed
๐ Duration
```
-0.00029066496063023806
+0.0002911388874053955
```
@@ -2477,7 +2477,7 @@ passed
๐ Duration
```
-0.0007610589964315295
+0.0007748880889266729
```
@@ -2568,7 +2568,7 @@ tests/test_utils_ask_yes_no.py:39: AssertionError
๐ Duration
```
-0.0002115190727636218
+0.00019136304035782814
```
@@ -2600,7 +2600,7 @@ passed
๐ Duration
```
-0.0003024080069735646
+0.00029732694383710623
```
@@ -2623,7 +2623,7 @@ passed
๐ Duration
```
-0.0006539790192618966
+0.0006483959732577205
```
@@ -2714,7 +2714,7 @@ tests/test_utils_ask_yes_no.py:39: AssertionError
๐ Duration
```
-0.00020225392654538155
+0.00019431498367339373
```
@@ -2746,7 +2746,7 @@ passed
๐ Duration
```
-0.0003002970479428768
+0.0003051139647141099
```
@@ -2769,7 +2769,7 @@ passed
๐ Duration
```
-0.0006570951081812382
+0.0006069770315662026
```
@@ -2860,7 +2860,7 @@ tests/test_utils_ask_yes_no.py:39: AssertionError
๐ Duration
```
-0.0001943589886650443
+0.0001949649304151535
```
diff --git a/ci-reports/markdown/json-tree-view.txt b/ci-reports/markdown/json-tree-view.txt
index bc85d9772..0ca308309 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: 1752695734.4664764
-โโโ duration: 7.8490989208221436
+โโโ created: 1752696837.1230426
+โโโ duration: 8.164735555648804
โโโ exitcode: 1
โโโ root: /workspace/tligui_y/slic
โโโ environment
@@ -550,13 +550,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0007267550099641085
+โ โ โ โโโ duration: 0.0007074400782585144
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0007684959564357996
+โ โ โ โโโ duration: 0.0007644289871677756
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0003046130295842886
+โ โ โโโ duration: 0.00029252609238028526
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -574,13 +574,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003261679084971547
+โ โ โ โโโ duration: 0.0003203329397365451
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006951650138944387
+โ โ โ โโโ duration: 0.0007032789289951324
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00018244900275021791
+โ โ โโโ duration: 0.00016526191029697657
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -598,10 +598,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030169798992574215
+โ โ โ โโโ duration: 0.0003005559556186199
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0008403689134865999
+โ โ โ โโโ duration: 0.0008435170166194439
โ โ โ โโโ 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.00037362193688750267
+โ โ โโโ duration: 0.00033029098995029926
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -670,13 +670,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00042962096631526947
+โ โ โ โโโ duration: 0.0003815980162471533
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0007382819894701242
+โ โ โ โโโ duration: 0.0006788340397179127
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00020329293329268694
+โ โ โโโ duration: 0.0001750619849190116
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -694,13 +694,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00036197504960000515
+โ โ โ โโโ duration: 0.0003217670600861311
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005919779650866985
+โ โ โ โโโ duration: 0.0005543379811570048
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016161194071173668
+โ โ โโโ duration: 0.00016898999456316233
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -719,13 +719,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.000305652036331594
+โ โ โ โโโ duration: 0.00029678805731236935
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005310949636623263
+โ โ โ โโโ duration: 0.0005114380037412047
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016053789295256138
+โ โ โโโ duration: 0.00016640103422105312
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -743,13 +743,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003016319824382663
+โ โ โ โโโ duration: 0.0003053180407732725
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006152980495244265
+โ โ โ โโโ duration: 0.0006527759833261371
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001782439649105072
+โ โ โโโ duration: 0.00017756293527781963
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -767,13 +767,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003004049649462104
+โ โ โ โโโ duration: 0.00029468198772519827
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005077850073575974
+โ โ โ โโโ duration: 0.0004901180509477854
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016214605420827866
+โ โ โโโ duration: 0.0001648450270295143
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -791,13 +791,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030899595003575087
+โ โ โ โโโ duration: 0.0002939660334959626
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00048333697486668825
+โ โ โ โโโ duration: 0.0005000369856134057
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017459096852689981
+โ โ โโโ duration: 0.0001643759896978736
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -815,13 +815,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002873259363695979
+โ โ โ โโโ duration: 0.00029228103812783957
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004965369589626789
+โ โ โ โโโ duration: 0.0004882708890363574
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00015677197370678186
+โ โ โโโ duration: 0.0001648829784244299
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -839,13 +839,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003038319991901517
+โ โ โ โโโ duration: 0.0002946830354630947
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005877079674974084
+โ โ โ โโโ duration: 0.000605081906542182
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001706629991531372
+โ โ โโโ duration: 0.00016677903477102518
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -863,13 +863,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002969109918922186
+โ โ โ โโโ duration: 0.0003062320174649358
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004924189997836947
+โ โ โ โโโ duration: 0.00048480695113539696
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00015918805729597807
+โ โ โโโ duration: 0.00017515092622488737
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -887,13 +887,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003105109790340066
+โ โ โ โโโ duration: 0.00029345403891056776
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004906320245936513
+โ โ โ โโโ duration: 0.0004949260037392378
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001689310884103179
+โ โ โโโ duration: 0.0001620710827410221
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_bis.py::test_ask_yes_no_ctrl_c
@@ -906,13 +906,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0001156999496743083
+โ โ โ โโโ duration: 0.00011274591088294983
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.000495192944072187
+โ โ โ โโโ duration: 0.0004915179451927543
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001072190934792161
+โ โ โโโ duration: 0.00011277699377387762
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_bis.py::test_ask_yes_no_ctrl_d
@@ -928,13 +928,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00022661988623440266
+โ โ โ โโโ duration: 0.00023289199452847242
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005959160625934601
+โ โ โ โโโ duration: 0.0006340789841488004
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00013989594299346209
+โ โ โโโ duration: 0.00014853000175207853
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_bis.py::test_ask_yes_no_ctrl_d
@@ -950,13 +950,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00022302300203591585
+โ โ โ โโโ duration: 0.0002176309935748577
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004842240596190095
+โ โ โ โโโ duration: 0.0005046810256317258
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001475820317864418
+โ โ โโโ duration: 0.00013920094352215528
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -974,13 +974,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00031459901947528124
+โ โ โ โโโ duration: 0.00032227905467152596
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005038530798628926
+โ โ โ โโโ duration: 0.0004982770187780261
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016616703942418098
+โ โ โโโ duration: 0.0001608988968655467
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -998,13 +998,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003017560811713338
+โ โ โ โโโ duration: 0.00029247195925563574
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00048781291116029024
+โ โ โ โโโ duration: 0.0005053920904174447
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016068201512098312
+โ โ โโโ duration: 0.00016060401685535908
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1022,10 +1022,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00029066496063023806
+โ โ โ โโโ duration: 0.0002911388874053955
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0007610589964315295
+โ โ โ โโโ duration: 0.0007748880889266729
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path:
@@ -1077,7 +1077,7 @@
โ โ โ
โ โ โ tests/test_utils_ask_yes_no.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.0002115190727636218
+โ โ โโโ duration: 0.00019136304035782814
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1095,13 +1095,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003257490461692214
+โ โ โ โโโ duration: 0.00030776194762438536
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005139010027050972
+โ โ โ โโโ duration: 0.0005245200591161847
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017373799346387386
+โ โ โโโ duration: 0.0001676470274105668
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1119,13 +1119,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00029789807740598917
+โ โ โ โโโ duration: 0.000310160918161273
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005271940026432276
+โ โ โ โโโ duration: 0.000510274083353579
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001753109972923994
+โ โ โโโ duration: 0.00017613894306123257
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1144,13 +1144,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00031163706444203854
+โ โ โ โโโ duration: 0.00029604509472846985
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005127439508214593
+โ โ โ โโโ duration: 0.0005137609550729394
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017541705165058374
+โ โ โโโ duration: 0.0001655610976740718
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1168,13 +1168,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0002946739550679922
+โ โ โ โโโ duration: 0.0003042339812964201
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0012571659171953797
+โ โ โ โโโ duration: 0.0005933939246460795
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001666840398684144
+โ โ โโโ duration: 0.00016255700029432774
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1192,13 +1192,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00030625099316239357
+โ โ โ โโโ duration: 0.0003162719076499343
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.00048618402797728777
+โ โ โ โโโ duration: 0.0005311479326337576
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016035709995776415
+โ โ โโโ duration: 0.0001708769705146551
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1216,10 +1216,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003024080069735646
+โ โ โ โโโ duration: 0.00029732694383710623
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006539790192618966
+โ โ โ โโโ duration: 0.0006483959732577205
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path:
@@ -1271,7 +1271,7 @@
โ โ โ
โ โ โ tests/test_utils_ask_yes_no.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.00020225392654538155
+โ โ โโโ duration: 0.00019431498367339373
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1289,13 +1289,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003122070338577032
+โ โ โ โโโ duration: 0.0003423680318519473
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005309480475261807
+โ โ โ โโโ duration: 0.000498112989589572
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016686401795595884
+โ โ โโโ duration: 0.00016041495837271214
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1313,13 +1313,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00031049095559865236
+โ โ โ โโโ duration: 0.000283082015812397
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004858309403061867
+โ โ โ โโโ duration: 0.0004963249666616321
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00017353403382003307
+โ โ โโโ duration: 0.00015933497343212366
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1337,10 +1337,10 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.0003002970479428768
+โ โ โ โโโ duration: 0.0003051139647141099
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0006570951081812382
+โ โ โ โโโ duration: 0.0006069770315662026
โ โ โ โโโ outcome: failed
โ โ โ โโโ crash
โ โ โ โ โโโ path:
@@ -1392,7 +1392,7 @@
โ โ โ
โ โ โ tests/test_utils_ask_yes_no.py:39: AssertionError
โ โ โโโ teardown
-โ โ โโโ duration: 0.0001943589886650443
+โ โ โโโ duration: 0.0001949649304151535
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid:
@@ -1410,13 +1410,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00031298596877604723
+โ โ โ โโโ duration: 0.0003013190580531955
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0005270229885354638
+โ โ โ โโโ duration: 0.000491242972202599
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00016249495092779398
+โ โ โโโ duration: 0.00016238901298493147
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_c
@@ -1429,13 +1429,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00011112005449831486
+โ โ โ โโโ duration: 0.00012449605856090784
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.000482079922221601
+โ โ โ โโโ duration: 0.000477908062748611
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00011480995453894138
+โ โ โโโ duration: 0.00011136604007333517
โ โ โโโ outcome: passed
โ โโโ -
โ โ โโโ nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d
@@ -1451,13 +1451,13 @@
โ โ โ โโโ slic
โ โ โ โโโ
โ โ โโโ setup
-โ โ โ โโโ duration: 0.00023661099839955568
+โ โ โ โโโ duration: 0.00021388591267168522
โ โ โ โโโ outcome: passed
โ โ โโโ call
-โ โ โ โโโ duration: 0.0004849489778280258
+โ โ โ โโโ duration: 0.0004923739470541477
โ โ โ โโโ outcome: passed
โ โ โโโ teardown
-โ โ โโโ duration: 0.00014986295718699694
+โ โ โโโ duration: 0.00014600693248212337
โ โ โโโ outcome: passed
โ โโโ -
โ โโโ nodeid: tests/test_utils_ask_yes_no.py::test_ask_yes_no_ctrl_d
@@ -1473,13 +1473,13 @@
โ โ โโโ slic
โ โ โโโ
โ โโโ setup
-โ โ โโโ duration: 0.00022196094505488873
+โ โ โโโ duration: 0.00022459891624748707
โ โ โโโ outcome: passed
โ โโโ call
-โ โ โโโ duration: 0.0006136859301477671
+โ โ โโโ duration: 0.0005686340155079961
โ โ โโโ outcome: passed
โ โโโ teardown
-โ โโโ duration: 0.0001536619383841753
+โ โโโ duration: 0.00016022403724491596
โ โโโ outcome: passed
โโโ warnings
โโโ -
diff --git a/ci-reports/markdown/pytest-report.json b/ci-reports/markdown/pytest-report.json
index 90f681caf..23cff0d02 100644
--- a/ci-reports/markdown/pytest-report.json
+++ b/ci-reports/markdown/pytest-report.json
@@ -1 +1 @@
-{"created": 1752695734.4664764, "duration": 7.8490989208221436, "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.0007267550099641085, "outcome": "passed"}, "call": {"duration": 0.0007684959564357996, "outcome": "passed"}, "teardown": {"duration": 0.0003046130295842886, "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.0003261679084971547, "outcome": "passed"}, "call": {"duration": 0.0006951650138944387, "outcome": "passed"}, "teardown": {"duration": 0.00018244900275021791, "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.00030169798992574215, "outcome": "passed"}, "call": {"duration": 0.0008403689134865999, "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.00037362193688750267, "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.00042962096631526947, "outcome": "passed"}, "call": {"duration": 0.0007382819894701242, "outcome": "passed"}, "teardown": {"duration": 0.00020329293329268694, "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.00036197504960000515, "outcome": "passed"}, "call": {"duration": 0.0005919779650866985, "outcome": "passed"}, "teardown": {"duration": 0.00016161194071173668, "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.000305652036331594, "outcome": "passed"}, "call": {"duration": 0.0005310949636623263, "outcome": "passed"}, "teardown": {"duration": 0.00016053789295256138, "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.0003016319824382663, "outcome": "passed"}, "call": {"duration": 0.0006152980495244265, "outcome": "passed"}, "teardown": {"duration": 0.0001782439649105072, "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.0003004049649462104, "outcome": "passed"}, "call": {"duration": 0.0005077850073575974, "outcome": "passed"}, "teardown": {"duration": 0.00016214605420827866, "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.00030899595003575087, "outcome": "passed"}, "call": {"duration": 0.00048333697486668825, "outcome": "passed"}, "teardown": {"duration": 0.00017459096852689981, "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.0002873259363695979, "outcome": "passed"}, "call": {"duration": 0.0004965369589626789, "outcome": "passed"}, "teardown": {"duration": 0.00015677197370678186, "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.0003038319991901517, "outcome": "passed"}, "call": {"duration": 0.0005877079674974084, "outcome": "passed"}, "teardown": {"duration": 0.0001706629991531372, "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.0002969109918922186, "outcome": "passed"}, "call": {"duration": 0.0004924189997836947, "outcome": "passed"}, "teardown": {"duration": 0.00015918805729597807, "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.0003105109790340066, "outcome": "passed"}, "call": {"duration": 0.0004906320245936513, "outcome": "passed"}, "teardown": {"duration": 0.0001689310884103179, "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.0001156999496743083, "outcome": "passed"}, "call": {"duration": 0.000495192944072187, "outcome": "passed"}, "teardown": {"duration": 0.0001072190934792161, "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.00022661988623440266, "outcome": "passed"}, "call": {"duration": 0.0005959160625934601, "outcome": "passed"}, "teardown": {"duration": 0.00013989594299346209, "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.00022302300203591585, "outcome": "passed"}, "call": {"duration": 0.0004842240596190095, "outcome": "passed"}, "teardown": {"duration": 0.0001475820317864418, "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.00031459901947528124, "outcome": "passed"}, "call": {"duration": 0.0005038530798628926, "outcome": "passed"}, "teardown": {"duration": 0.00016616703942418098, "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.0003017560811713338, "outcome": "passed"}, "call": {"duration": 0.00048781291116029024, "outcome": "passed"}, "teardown": {"duration": 0.00016068201512098312, "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.00029066496063023806, "outcome": "passed"}, "call": {"duration": 0.0007610589964315295, "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.0002115190727636218, "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.0003257490461692214, "outcome": "passed"}, "call": {"duration": 0.0005139010027050972, "outcome": "passed"}, "teardown": {"duration": 0.00017373799346387386, "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.00029789807740598917, "outcome": "passed"}, "call": {"duration": 0.0005271940026432276, "outcome": "passed"}, "teardown": {"duration": 0.0001753109972923994, "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.00031163706444203854, "outcome": "passed"}, "call": {"duration": 0.0005127439508214593, "outcome": "passed"}, "teardown": {"duration": 0.00017541705165058374, "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.0002946739550679922, "outcome": "passed"}, "call": {"duration": 0.0012571659171953797, "outcome": "passed"}, "teardown": {"duration": 0.0001666840398684144, "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.00030625099316239357, "outcome": "passed"}, "call": {"duration": 0.00048618402797728777, "outcome": "passed"}, "teardown": {"duration": 0.00016035709995776415, "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.0003024080069735646, "outcome": "passed"}, "call": {"duration": 0.0006539790192618966, "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.00020225392654538155, "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.0003122070338577032, "outcome": "passed"}, "call": {"duration": 0.0005309480475261807, "outcome": "passed"}, "teardown": {"duration": 0.00016686401795595884, "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.00031049095559865236, "outcome": "passed"}, "call": {"duration": 0.0004858309403061867, "outcome": "passed"}, "teardown": {"duration": 0.00017353403382003307, "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.0003002970479428768, "outcome": "passed"}, "call": {"duration": 0.0006570951081812382, "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.0001943589886650443, "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.00031298596877604723, "outcome": "passed"}, "call": {"duration": 0.0005270229885354638, "outcome": "passed"}, "teardown": {"duration": 0.00016249495092779398, "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.00011112005449831486, "outcome": "passed"}, "call": {"duration": 0.000482079922221601, "outcome": "passed"}, "teardown": {"duration": 0.00011480995453894138, "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.00023661099839955568, "outcome": "passed"}, "call": {"duration": 0.0004849489778280258, "outcome": "passed"}, "teardown": {"duration": 0.00014986295718699694, "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.00022196094505488873, "outcome": "passed"}, "call": {"duration": 0.0006136859301477671, "outcome": "passed"}, "teardown": {"duration": 0.0001536619383841753, "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": 1752696837.1230426, "duration": 8.164735555648804, "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.0007074400782585144, "outcome": "passed"}, "call": {"duration": 0.0007644289871677756, "outcome": "passed"}, "teardown": {"duration": 0.00029252609238028526, "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.0003203329397365451, "outcome": "passed"}, "call": {"duration": 0.0007032789289951324, "outcome": "passed"}, "teardown": {"duration": 0.00016526191029697657, "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.0003005559556186199, "outcome": "passed"}, "call": {"duration": 0.0008435170166194439, "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.00033029098995029926, "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.0003815980162471533, "outcome": "passed"}, "call": {"duration": 0.0006788340397179127, "outcome": "passed"}, "teardown": {"duration": 0.0001750619849190116, "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.0003217670600861311, "outcome": "passed"}, "call": {"duration": 0.0005543379811570048, "outcome": "passed"}, "teardown": {"duration": 0.00016898999456316233, "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.00029678805731236935, "outcome": "passed"}, "call": {"duration": 0.0005114380037412047, "outcome": "passed"}, "teardown": {"duration": 0.00016640103422105312, "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.0003053180407732725, "outcome": "passed"}, "call": {"duration": 0.0006527759833261371, "outcome": "passed"}, "teardown": {"duration": 0.00017756293527781963, "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.00029468198772519827, "outcome": "passed"}, "call": {"duration": 0.0004901180509477854, "outcome": "passed"}, "teardown": {"duration": 0.0001648450270295143, "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.0002939660334959626, "outcome": "passed"}, "call": {"duration": 0.0005000369856134057, "outcome": "passed"}, "teardown": {"duration": 0.0001643759896978736, "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.00029228103812783957, "outcome": "passed"}, "call": {"duration": 0.0004882708890363574, "outcome": "passed"}, "teardown": {"duration": 0.0001648829784244299, "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.0002946830354630947, "outcome": "passed"}, "call": {"duration": 0.000605081906542182, "outcome": "passed"}, "teardown": {"duration": 0.00016677903477102518, "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.0003062320174649358, "outcome": "passed"}, "call": {"duration": 0.00048480695113539696, "outcome": "passed"}, "teardown": {"duration": 0.00017515092622488737, "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.00029345403891056776, "outcome": "passed"}, "call": {"duration": 0.0004949260037392378, "outcome": "passed"}, "teardown": {"duration": 0.0001620710827410221, "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.00011274591088294983, "outcome": "passed"}, "call": {"duration": 0.0004915179451927543, "outcome": "passed"}, "teardown": {"duration": 0.00011277699377387762, "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.00023289199452847242, "outcome": "passed"}, "call": {"duration": 0.0006340789841488004, "outcome": "passed"}, "teardown": {"duration": 0.00014853000175207853, "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.0002176309935748577, "outcome": "passed"}, "call": {"duration": 0.0005046810256317258, "outcome": "passed"}, "teardown": {"duration": 0.00013920094352215528, "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.00032227905467152596, "outcome": "passed"}, "call": {"duration": 0.0004982770187780261, "outcome": "passed"}, "teardown": {"duration": 0.0001608988968655467, "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.00029247195925563574, "outcome": "passed"}, "call": {"duration": 0.0005053920904174447, "outcome": "passed"}, "teardown": {"duration": 0.00016060401685535908, "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.0002911388874053955, "outcome": "passed"}, "call": {"duration": 0.0007748880889266729, "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.00019136304035782814, "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.00030776194762438536, "outcome": "passed"}, "call": {"duration": 0.0005245200591161847, "outcome": "passed"}, "teardown": {"duration": 0.0001676470274105668, "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.000310160918161273, "outcome": "passed"}, "call": {"duration": 0.000510274083353579, "outcome": "passed"}, "teardown": {"duration": 0.00017613894306123257, "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.00029604509472846985, "outcome": "passed"}, "call": {"duration": 0.0005137609550729394, "outcome": "passed"}, "teardown": {"duration": 0.0001655610976740718, "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.0003042339812964201, "outcome": "passed"}, "call": {"duration": 0.0005933939246460795, "outcome": "passed"}, "teardown": {"duration": 0.00016255700029432774, "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.0003162719076499343, "outcome": "passed"}, "call": {"duration": 0.0005311479326337576, "outcome": "passed"}, "teardown": {"duration": 0.0001708769705146551, "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.00029732694383710623, "outcome": "passed"}, "call": {"duration": 0.0006483959732577205, "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.00019431498367339373, "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.0003423680318519473, "outcome": "passed"}, "call": {"duration": 0.000498112989589572, "outcome": "passed"}, "teardown": {"duration": 0.00016041495837271214, "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.000283082015812397, "outcome": "passed"}, "call": {"duration": 0.0004963249666616321, "outcome": "passed"}, "teardown": {"duration": 0.00015933497343212366, "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.0003051139647141099, "outcome": "passed"}, "call": {"duration": 0.0006069770315662026, "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.0001949649304151535, "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.0003013190580531955, "outcome": "passed"}, "call": {"duration": 0.000491242972202599, "outcome": "passed"}, "teardown": {"duration": 0.00016238901298493147, "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.00012449605856090784, "outcome": "passed"}, "call": {"duration": 0.000477908062748611, "outcome": "passed"}, "teardown": {"duration": 0.00011136604007333517, "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.00021388591267168522, "outcome": "passed"}, "call": {"duration": 0.0004923739470541477, "outcome": "passed"}, "teardown": {"duration": 0.00014600693248212337, "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.00022459891624748707, "outcome": "passed"}, "call": {"duration": 0.0005686340155079961, "outcome": "passed"}, "teardown": {"duration": 0.00016022403724491596, "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