From cc9e9928aac2bc3a6f8dd595eeb078bfcf93bd68 Mon Sep 17 00:00:00 2001 From: ci-bot Date: Wed, 16 Jul 2025 18:45:32 +0000 Subject: [PATCH] CI: update test report and coverage files --- ci-reports/markdown/TEST-REPORT.md | 336 ++++++++++++------------- ci-reports/markdown/json-tree-view.txt | 318 +++++++++++------------ ci-reports/markdown/pytest-report.json | 2 +- 3 files changed, 328 insertions(+), 328 deletions(-) diff --git a/ci-reports/markdown/TEST-REPORT.md b/ci-reports/markdown/TEST-REPORT.md index 5c7860cd..a909c499 100644 --- a/ci-reports/markdown/TEST-REPORT.md +++ b/ci-reports/markdown/TEST-REPORT.md @@ -47,7 +47,7 @@ ERROR tests/test_collector_error.py !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! KeyboardInterrupt !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! /workspace/tligui_y/slic/tests/test_string_utils.py:43: KeyboardInterrupt (to show a full traceback on KeyboardInterrupt use --full-trace) -======== 31 failed, 17 passed, 2 xfailed, 1 warning, 2 errors in 0.82s ========= +======== 31 failed, 17 passed, 2 xfailed, 1 warning, 2 errors in 0.77s ========= ``` @@ -58,7 +58,7 @@ ERROR tests/test_collector_error.py ============================= test session starts ============================== platform linux -- Python 3.8.20, pytest-8.3.4, pluggy-1.5.0 rootdir: /workspace/tligui_y/slic -plugins: cov-5.0.0, metadata-3.1.1, allure-pytest-2.13.5, html-4.1.1, json-report-1.5.0, md-report-0.6.2 +plugins: metadata-3.1.1, cov-5.0.0, allure-pytest-2.13.5, html-4.1.1, json-report-1.5.0, md-report-0.6.2 collected 51 items / 2 errors tests/test_io_utils.py ..FFFFFF.F @@ -134,7 +134,7 @@ E FileNotFoundError: [Errno 2] No such file or directory: 'nonexistent.fil functions/io_utils.py:2: FileNotFoundError ____________________________ test_permission_error _____________________________ -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fbbb0292340> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fac5af5f400> def test_permission_error(monkeypatch): # Patch open to raise PermissionError simulating access denial @@ -158,7 +158,7 @@ E PermissionError: Permission denied tests/test_io_utils.py:34: PermissionError _____________________________ test_mock_open_error _____________________________ -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fbbb02b49d0> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fac5af77220> def test_mock_open_error(monkeypatch): # Mock open() to raise IOError simulating read error @@ -175,7 +175,7 @@ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ return self._execute_mock_call(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = +self = args = ('file.txt', 'r'), kwargs = {}, effect = OSError('Mocked IOError') def _execute_mock_call(self, /, *args, **kwargs): @@ -201,7 +201,7 @@ E ValueError: I/O operation on closed file tests/test_io_utils.py:50: ValueError ________________________________ test_os_error _________________________________ -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fbbad90abb0> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fac5af94cd0> def test_os_error(monkeypatch): # Patch os.remove to raise OSError simulating filesystem error @@ -369,7 +369,7 @@ tests/test_math_utils.py:106: StopIteration The above exception was the direct cause of the following exception: cls = -func = . at 0x7fbbade229d0> +func = . at 0x7fac5afbb9d0> when = 'call' reraise = (, ) @@ -498,7 +498,7 @@ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'non_existent_module_xyz' -import_ = +import_ = > ??? E ModuleNotFoundError: No module named 'non_existent_module_xyz' @@ -591,17 +591,17 @@ ERROR tests/test_collector_error.py !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! KeyboardInterrupt !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! /workspace/tligui_y/slic/tests/test_string_utils.py:43: KeyboardInterrupt (to show a full traceback on KeyboardInterrupt use --full-trace) -======== 31 failed, 17 passed, 2 xfailed, 1 warning, 2 errors in 0.82s ========= +======== 31 failed, 17 passed, 2 xfailed, 1 warning, 2 errors in 0.77s ========= ``` --- # ๐Ÿงช Test Report -*Generated on 2025-07-16 18:25:21* +*Generated on 2025-07-16 18:45:32* ## ๐Ÿงพ General Info -- **duration**: 0.8185153007507324 +- **duration**: 0.7707462310791016 - **root**: /workspace/tligui_y/slic - **environment**: @@ -637,7 +637,7 @@ ERROR tests/test_collector_error.py ๐Ÿ“Œ Duration ``` -0.003710041055455804 +0.0032929020235314965 ``` @@ -660,7 +660,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0004371920367702842 +0.00042323104571551085 ``` @@ -683,7 +683,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00024405296426266432 +0.00025170098524540663 ``` @@ -722,7 +722,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0005132569931447506 +0.00044403201900422573 ``` @@ -745,7 +745,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002967710606753826 +0.0002863870467990637 ``` @@ -768,7 +768,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001389649696648121 +0.00013737205881625414 ``` @@ -807,7 +807,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0006697800708934665 +0.0006281330715864897 ``` @@ -830,7 +830,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0011413779575377703 +0.0009011360816657543 ``` @@ -853,7 +853,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001551950117573142 +0.00015056005213409662 ``` @@ -901,7 +901,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00030864193104207516 +0.0003120799083262682 ``` @@ -924,7 +924,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001509459689259529 +0.00015068694483488798 ``` @@ -947,7 +947,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001433800207450986 +0.00013785099145025015 ``` @@ -979,7 +979,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002519839908927679 +0.0002587540075182915 ``` @@ -1002,7 +1002,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014179409481585026 +0.00013468798715621233 ``` @@ -1025,7 +1025,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013263407163321972 +0.00013181904796510935 ``` @@ -1057,7 +1057,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00023604801390320063 +0.0002466639271005988 ``` @@ -1080,7 +1080,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014133204240351915 +0.00013707298785448074 ``` @@ -1103,7 +1103,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001336539862677455 +0.00013453199062496424 ``` @@ -1135,7 +1135,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00023844500537961721 +0.0002681369660422206 ``` @@ -1158,7 +1158,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013488996773958206 +0.00012873101513832808 ``` @@ -1181,7 +1181,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001297459239140153 +0.00013778801076114178 ``` @@ -1213,7 +1213,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002300030319020152 +0.00025412009563297033 ``` @@ -1236,7 +1236,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001291710650548339 +0.0001278450945392251 ``` @@ -1259,7 +1259,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013307295739650726 +0.0001282509183511138 ``` @@ -1299,7 +1299,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00023506698198616505 +0.00024406297598034143 ``` @@ -1322,7 +1322,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012954301200807095 +0.0001251619542017579 ``` @@ -1345,7 +1345,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013334304094314575 +0.00013384304475039244 ``` @@ -1377,7 +1377,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002523470902815461 +0.000251163961365819 ``` @@ -1400,7 +1400,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001300800358876586 +0.0001265830360352993 ``` @@ -1423,7 +1423,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013619998935610056 +0.00012941902969032526 ``` @@ -1455,7 +1455,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002474220236763358 +0.00024956499692052603 ``` @@ -1478,7 +1478,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012912694364786148 +0.0001293469686061144 ``` @@ -1501,7 +1501,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013625004794448614 +0.00013048702385276556 ``` @@ -1549,7 +1549,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00029879703652113676 +0.0003470570081844926 ``` @@ -1572,7 +1572,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014498899690806866 +0.00018179207108914852 ``` @@ -1595,7 +1595,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014059594832360744 +0.00016426295042037964 ``` @@ -1627,7 +1627,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00022083206567913294 +0.0002275860169902444 ``` @@ -1650,7 +1650,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013171799946576357 +0.0001428480027243495 ``` @@ -1673,7 +1673,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001262199366465211 +0.0001554370392113924 ``` @@ -1720,7 +1720,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001083860406652093 +0.00011409400030970573 ``` @@ -1743,7 +1743,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014301203191280365 +0.0001573330955579877 ``` @@ -1766,7 +1766,7 @@ passed ๐Ÿ“Œ Duration ``` -9.591691195964813e-05 +0.00012732995674014091 ``` @@ -1805,7 +1805,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011643790639936924 +0.00013171008322387934 ``` @@ -1828,7 +1828,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014409096911549568 +0.00015937897842377424 ``` @@ -1851,7 +1851,7 @@ passed ๐Ÿ“Œ Duration ``` -9.977002628147602e-05 +0.00010533002205193043 ``` @@ -1890,7 +1890,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00010337494313716888 +0.00010884297080338001 ``` @@ -1913,7 +1913,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001527759013697505 +0.0001463419757783413 ``` @@ -1936,7 +1936,7 @@ passed ๐Ÿ“Œ Duration ``` -9.589409455657005e-05 +0.00010895007289946079 ``` @@ -1975,7 +1975,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011919799726456404 +0.000117360963486135 ``` @@ -1998,7 +1998,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013791793026030064 +0.00014026195276528597 ``` @@ -2021,7 +2021,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00010078400373458862 +0.00010643398854881525 ``` @@ -2060,7 +2060,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001147179864346981 +0.00012203503865748644 ``` @@ -2115,7 +2115,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00010901608038693666 +0.00011354300659149885 ``` @@ -2138,7 +2138,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00016140704974532127 +0.00015954894479364157 ``` @@ -2209,7 +2209,7 @@ functions/io_utils.py:10: OSError ๐Ÿ“Œ Duration ``` -0.00014134205412119627 +0.00013891898561269045 ``` @@ -2248,7 +2248,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012427300680428743 +0.000118304044008255 ``` @@ -2271,7 +2271,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001827320083975792 +0.00017448398284614086 ``` @@ -2344,7 +2344,7 @@ functions/io_utils.py:2: FileNotFoundError ๐Ÿ“Œ Duration ``` -0.00014790799468755722 +0.00013521395158022642 ``` @@ -2383,7 +2383,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002062659477815032 +0.00019927206449210644 ``` @@ -2406,7 +2406,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00017533497884869576 +0.0001715869875624776 ``` @@ -2456,7 +2456,7 @@ message: PermissionError ๐Ÿ“Œ Longrepr ``` -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fbbb0292340> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fac5af5f400> def test_permission_error(monkeypatch): # Patch open to raise PermissionError simulating access denial @@ -2490,7 +2490,7 @@ tests/test_io_utils.py:34: PermissionError ๐Ÿ“Œ Duration ``` -0.00016287504695355892 +0.000161978998221457 ``` @@ -2529,7 +2529,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00019304396118968725 +0.00018527405336499214 ``` @@ -2552,7 +2552,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0033886550227180123 +0.003261367091909051 ``` @@ -2605,7 +2605,7 @@ message: OSError ๐Ÿ“Œ Longrepr ``` -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fbbb02b49d0> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fac5af77220> def test_mock_open_error(monkeypatch): # Mock open() to raise IOError simulating read error @@ -2622,7 +2622,7 @@ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ return self._execute_mock_call(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -self = +self = args = ('file.txt', 'r'), kwargs = {}, effect = OSError('Mocked IOError') def _execute_mock_call(self, /, *args, **kwargs): @@ -2648,7 +2648,7 @@ E OSError: Mocked IOError ๐Ÿ“Œ Duration ``` -0.0003110439283773303 +0.0003157480387017131 ``` @@ -2687,7 +2687,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00017978600226342678 +0.00016435794532299042 ``` @@ -2710,7 +2710,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00019238307140767574 +0.00019060296472162008 ``` @@ -2774,7 +2774,7 @@ tests/test_io_utils.py:50: ValueError ๐Ÿ“Œ Duration ``` -0.00017690705135464668 +0.00019040692131966352 ``` @@ -2813,7 +2813,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002966850297525525 +0.0002525340532884002 ``` @@ -2836,7 +2836,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00019705796148627996 +0.0001832999987527728 ``` @@ -2883,7 +2883,7 @@ message: OSError ๐Ÿ“Œ Longrepr ``` -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fbbad90abb0> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fac5af94cd0> def test_os_error(monkeypatch): # Patch os.remove to raise OSError simulating filesystem error @@ -2914,7 +2914,7 @@ tests/test_io_utils.py:55: OSError ๐Ÿ“Œ Duration ``` -0.00017324707005172968 +0.0001675420207902789 ``` @@ -2953,7 +2953,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011528993491083384 +0.00011526502203196287 ``` @@ -2976,7 +2976,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00016769208014011383 +0.00016551604494452477 ``` @@ -3038,7 +3038,7 @@ tests/test_io_utils.py:69: FileNotFoundError ๐Ÿ“Œ Duration ``` -0.0001352480612695217 +0.00013684399891644716 ``` @@ -3085,7 +3085,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001260349527001381 +0.00012934405822306871 ``` @@ -3108,7 +3108,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001509200083091855 +0.0001682559959590435 ``` @@ -3170,7 +3170,7 @@ tests/test_math_utils.py:16: NameError ๐Ÿ“Œ Duration ``` -0.00013555807527154684 +0.00013551698066294193 ``` @@ -3209,7 +3209,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012164399959146976 +0.0001236159587278962 ``` @@ -3232,7 +3232,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001585870049893856 +0.00015533296391367912 ``` @@ -3294,7 +3294,7 @@ tests/test_math_utils.py:20: AttributeError ๐Ÿ“Œ Duration ``` -0.00013517099432647228 +0.00013395596761256456 ``` @@ -3333,7 +3333,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00010227295570075512 +0.0001014400040730834 ``` @@ -3356,7 +3356,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0004804600030183792 +0.00045633595436811447 ``` @@ -3420,7 +3420,7 @@ tests/test_math_utils.py:51: AssertionError ๐Ÿ“Œ Duration ``` -0.00013169902376830578 +0.00013647007290273905 ``` @@ -3459,7 +3459,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011937902309000492 +0.0001167230075225234 ``` @@ -3482,7 +3482,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015943008475005627 +0.00015886698383837938 ``` @@ -3555,7 +3555,7 @@ functions/math_utils.py:5: ZeroDivisionError ๐Ÿ“Œ Duration ``` -0.00013354606926441193 +0.00013587402645498514 ``` @@ -3594,7 +3594,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011866597924381495 +0.0001172930933535099 ``` @@ -3617,7 +3617,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001485190587118268 +0.00014794792514294386 ``` @@ -3679,7 +3679,7 @@ tests/test_math_utils.py:64: RuntimeError ๐Ÿ“Œ Duration ``` -0.00013488205149769783 +0.00013355608098208904 ``` @@ -3718,7 +3718,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011891103349626064 +0.00012036191765218973 ``` @@ -3741,7 +3741,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00016273802611976862 +0.0001472249859943986 ``` @@ -3803,7 +3803,7 @@ tests/test_math_utils.py:68: MemoryError ๐Ÿ“Œ Duration ``` -0.0001343520125374198 +0.0001355229178443551 ``` @@ -3842,7 +3842,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012216810137033463 +0.00012833601795136929 ``` @@ -3865,7 +3865,7 @@ passed ๐Ÿ“Œ Duration ``` -0.000158025068230927 +0.0001487709814682603 ``` @@ -3927,7 +3927,7 @@ tests/test_math_utils.py:72: TimeoutError ๐Ÿ“Œ Duration ``` -0.0001323530450463295 +0.0001443210057914257 ``` @@ -3966,7 +3966,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011551205534487963 +0.00011506897863000631 ``` @@ -3989,7 +3989,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0008184759644791484 +0.000796740991063416 ``` @@ -4065,7 +4065,7 @@ E RecursionError: maximum recursion depth exceeded ๐Ÿ“Œ Duration ``` -0.00014965597074478865 +0.00015934999100863934 ``` @@ -4104,7 +4104,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012089998926967382 +0.00011973304208368063 ``` @@ -4127,7 +4127,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00016288505867123604 +0.0001488890266045928 ``` @@ -4189,7 +4189,7 @@ tests/test_math_utils.py:82: FloatingPointError ๐Ÿ“Œ Duration ``` -0.00015571503899991512 +0.00013660895638167858 ``` @@ -4228,7 +4228,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012269907165318727 +0.0001231050118803978 ``` @@ -4251,7 +4251,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015873892698436975 +0.00018442899454385042 ``` @@ -4313,7 +4313,7 @@ tests/test_math_utils.py:86: OverflowError ๐Ÿ“Œ Duration ``` -0.000138375093229115 +0.0001341389724984765 ``` @@ -4352,7 +4352,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011761498171836138 +0.00011857703793793917 ``` @@ -4375,7 +4375,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00016015092842280865 +0.00016147491987794638 ``` @@ -4437,7 +4437,7 @@ tests/test_math_utils.py:90: ValueError ๐Ÿ“Œ Duration ``` -0.0001519270008429885 +0.0001325380289927125 ``` @@ -4476,7 +4476,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012187298852950335 +0.00011501496192067862 ``` @@ -4499,7 +4499,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00017895700875669718 +0.00014797598123550415 ``` @@ -4561,7 +4561,7 @@ tests/test_math_utils.py:94: TypeError ๐Ÿ“Œ Duration ``` -0.00013919896446168423 +0.0001359879970550537 ``` @@ -4600,7 +4600,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011769495904445648 +0.00013235199730843306 ``` @@ -4623,7 +4623,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015696301124989986 +0.0001546080457046628 ``` @@ -4685,7 +4685,7 @@ tests/test_math_utils.py:98: Exception ๐Ÿ“Œ Duration ``` -0.00014282308984547853 +0.00014670309610664845 ``` @@ -4724,7 +4724,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011343194637447596 +0.00011632998939603567 ``` @@ -4747,7 +4747,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00016502290964126587 +0.00015097495634108782 ``` @@ -4809,7 +4809,7 @@ tests/test_math_utils.py:102: CustomError ๐Ÿ“Œ Duration ``` -0.00013144605327397585 +0.0001405490329489112 ``` @@ -4848,7 +4848,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001330230152234435 +0.00012906896881759167 ``` @@ -4871,7 +4871,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00016045104712247849 +0.00016494200099259615 ``` @@ -4955,7 +4955,7 @@ tests/test_math_utils.py:106: StopIteration The above exception was the direct cause of the following exception: cls = -func = . at 0x7fbbade229d0> +func = . at 0x7fac5afbb9d0> when = 'call' reraise = (, ) @@ -5027,7 +5027,7 @@ E RuntimeError: generator raised StopIteration ๐Ÿ“Œ Duration ``` -0.00035480898804962635 +0.0002637020079419017 ``` @@ -5066,7 +5066,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00023323006462305784 +0.00015517498832195997 ``` @@ -5089,7 +5089,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00027709698770195246 +0.0001781380269676447 ``` @@ -5151,7 +5151,7 @@ tests/test_math_utils.py:110: GeneratorExit ๐Ÿ“Œ Duration ``` -0.0003132909769192338 +0.00018268602434545755 ``` @@ -5190,7 +5190,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00021424191072583199 +0.00013178098015487194 ``` @@ -5213,7 +5213,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00028608902357518673 +0.00018824602011591196 ``` @@ -5281,7 +5281,7 @@ tests/test_math_utils.py:114: SyntaxError ๐Ÿ“Œ Duration ``` -0.00028806598857045174 +0.00014296395238488913 ``` @@ -5320,7 +5320,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00023051397874951363 +0.00012288999278098345 ``` @@ -5343,7 +5343,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00028184300754219294 +0.00016941793728619814 ``` @@ -5405,7 +5405,7 @@ tests/test_math_utils.py:118: SystemExit ๐Ÿ“Œ Duration ``` -0.0002677349839359522 +0.00013380905147641897 ``` @@ -5444,7 +5444,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00021336995996534824 +0.0001232329523190856 ``` @@ -5467,7 +5467,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002631540410220623 +0.00015732890460640192 ``` @@ -5542,7 +5542,7 @@ tests/test_math_utils.py:123: TypeError ๐Ÿ“Œ Duration ``` -0.000171064049936831 +0.00013779709115624428 ``` @@ -5581,7 +5581,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001286650076508522 +0.00011760694906115532 ``` @@ -5604,7 +5604,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00016989000141620636 +0.0001614170614629984 ``` @@ -5665,7 +5665,7 @@ tests/test_math_utils.py:127: ImportError ๐Ÿ“Œ Duration ``` -0.00014758494216948748 +0.00014843896497040987 ``` @@ -5704,7 +5704,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013205502182245255 +0.000123838079161942 ``` @@ -5727,7 +5727,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0004821020411327481 +0.0005040490068495274 ``` @@ -5798,7 +5798,7 @@ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'non_existent_module_xyz' -import_ = +import_ = > ??? E ModuleNotFoundError: No module named 'non_existent_module_xyz' @@ -5816,7 +5816,7 @@ E ModuleNotFoundError: No module named 'non_existent_module_xyz' ๐Ÿ“Œ Duration ``` -0.00015373306814581156 +0.0002048340393230319 ``` @@ -5863,7 +5863,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00010730198118835688 +0.00013062707148492336 ``` @@ -5886,7 +5886,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014561298303306103 +0.00018049299251288176 ``` @@ -5960,7 +5960,7 @@ functions/string_utils.py:3: TypeError ๐Ÿ“Œ Duration ``` -0.00014019408263266087 +0.00016367295756936073 ``` @@ -5999,7 +5999,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00010236504022032022 +0.00010945799294859171 ``` @@ -6022,7 +6022,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001433260040357709 +0.0001505690161138773 ``` @@ -6084,7 +6084,7 @@ tests/test_string_utils.py:26: UnicodeDecodeError ๐Ÿ“Œ Duration ``` -0.0001335239503532648 +0.00015063898172229528 ``` @@ -6123,7 +6123,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011540506966412067 +0.00012140406761318445 ``` @@ -6146,7 +6146,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015034398529678583 +0.0001555399503558874 ``` @@ -6208,7 +6208,7 @@ tests/test_string_utils.py:30: UnicodeDecodeError ๐Ÿ“Œ Duration ``` -0.00013162405230104923 +0.00013213895726948977 ``` @@ -6263,7 +6263,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012910505756735802 +0.00013320602010935545 ``` @@ -6286,7 +6286,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002753389999270439 +0.0002824590774253011 ``` @@ -6351,7 +6351,7 @@ tests/test_math_utils.py:60: AssertionError ๐Ÿ“Œ Duration ``` -0.00013430498074740171 +0.00013584911357611418 ``` @@ -6398,7 +6398,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001156550133600831 +0.0001289290376007557 ``` @@ -6421,7 +6421,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0006164630176499486 +0.0006400829879567027 ``` @@ -6492,7 +6492,7 @@ tests/test_string_utils.py:39: AssertionError ๐Ÿ“Œ Duration ``` -0.00014216196723282337 +0.00014669797383248806 ``` diff --git a/ci-reports/markdown/json-tree-view.txt b/ci-reports/markdown/json-tree-view.txt index 77cb1ac7..c1b2482c 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: 1752690321.1175065 -โ”œโ”€โ”€ duration: 0.8185153007507324 +โ”œโ”€โ”€ created: 1752691532.0411685 +โ”œโ”€โ”€ duration: 0.7707462310791016 โ”œโ”€โ”€ exitcode: 2 โ”œโ”€โ”€ root: /workspace/tligui_y/slic โ”œโ”€โ”€ environment @@ -428,13 +428,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.003710041055455804 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0032929020235314965 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0004371920367702842 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00042323104571551085 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00024405296426266432 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00025170098524540663 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_write_file @@ -447,13 +447,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0005132569931447506 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00044403201900422573 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002967710606753826 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002863870467990637 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001389649696648121 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013737205881625414 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_cause_io_error @@ -466,10 +466,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010901608038693666 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011354300659149885 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016140704974532127 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015954894479364157 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/functions/io_utils.py @@ -498,7 +498,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ functions/io_utils.py:10: OSError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014134205412119627 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013891898561269045 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_file_not_found @@ -511,10 +511,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012427300680428743 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000118304044008255 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001827320083975792 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00017448398284614086 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/functions/io_utils.py @@ -547,7 +547,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ functions/io_utils.py:2: FileNotFoundError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014790799468755722 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013521395158022642 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_permission_error @@ -560,10 +560,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002062659477815032 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019927206449210644 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00017533497884869576 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001715869875624776 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_io_utils.py @@ -583,7 +583,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ lineno: 34 โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ message: PermissionError โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ longrepr: monkeypatch = <_pytest.monkeypatch.MonkeyPatch object -โ”‚ โ”‚ โ”‚ at 0x7fbbb0292340> +โ”‚ โ”‚ โ”‚ at 0x7fac5af5f400> โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ def test_permission_error(monkeypatch): โ”‚ โ”‚ โ”‚ # Patch open to raise PermissionError simulating access @@ -609,7 +609,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_io_utils.py:34: PermissionError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016287504695355892 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000161978998221457 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_mock_open_error @@ -622,10 +622,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019304396118968725 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00018527405336499214 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0033886550227180123 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.003261367091909051 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: @@ -651,7 +651,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ lineno: 1140 โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ message: OSError โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ longrepr: monkeypatch = <_pytest.monkeypatch.MonkeyPatch object -โ”‚ โ”‚ โ”‚ at 0x7fbbb02b49d0> +โ”‚ โ”‚ โ”‚ at 0x7fac5af77220> โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ def test_mock_open_error(monkeypatch): โ”‚ โ”‚ โ”‚ # Mock open() to raise IOError simulating read error @@ -673,7 +673,7 @@ โ”‚ โ”‚ โ”‚ _ _ _ _ _ _ _ _ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ self = +โ”‚ โ”‚ โ”‚ id='140378237269184'> โ”‚ โ”‚ โ”‚ args = ('file.txt', 'r'), kwargs = {}, effect = OSError('Mocked โ”‚ โ”‚ โ”‚ IOError') โ”‚ โ”‚ โ”‚ @@ -691,7 +691,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ .pixi/envs/default/lib/python3.8/unittest/mock.py:1140: OSError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0003110439283773303 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0003157480387017131 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_file_handle_closed_error @@ -704,10 +704,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00017978600226342678 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016435794532299042 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019238307140767574 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019060296472162008 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_io_utils.py @@ -727,7 +727,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_io_utils.py:50: ValueError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00017690705135464668 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019040692131966352 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_os_error @@ -740,10 +740,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002966850297525525 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002525340532884002 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019705796148627996 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001832999987527728 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_io_utils.py @@ -759,7 +759,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ lineno: 55 โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ message: OSError โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ longrepr: monkeypatch = <_pytest.monkeypatch.MonkeyPatch object -โ”‚ โ”‚ โ”‚ at 0x7fbbad90abb0> +โ”‚ โ”‚ โ”‚ at 0x7fac5af94cd0> โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ def test_os_error(monkeypatch): โ”‚ โ”‚ โ”‚ # Patch os.remove to raise OSError simulating filesystem @@ -781,7 +781,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_io_utils.py:55: OSError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00017324707005172968 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001675420207902789 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_write_file_readonly @@ -794,13 +794,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0006697800708934665 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0006281330715864897 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0011413779575377703 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0009011360816657543 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001551950117573142 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015056005213409662 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_file_not_found_error @@ -813,10 +813,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011528993491083384 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011526502203196287 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016769208014011383 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016551604494452477 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_io_utils.py @@ -837,7 +837,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_io_utils.py:69: FileNotFoundError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001352480612695217 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013684399891644716 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_broken @@ -850,10 +850,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001260349527001381 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012934405822306871 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001509200083091855 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001682559959590435 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -873,7 +873,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:16: NameError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013555807527154684 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013551698066294193 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_call_missing_function @@ -886,10 +886,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012164399959146976 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001236159587278962 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001585870049893856 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015533296391367912 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -910,7 +910,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:20: AttributeError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013517099432647228 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013395596761256456 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass[2-2-4] @@ -926,13 +926,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00030864193104207516 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0003120799083262682 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001509459689259529 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015068694483488798 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001433800207450986 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013785099145025015 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass[1-5-6] @@ -948,13 +948,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002519839908927679 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002587540075182915 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014179409481585026 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013468798715621233 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013263407163321972 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013181904796510935 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass[3-4-7] @@ -970,13 +970,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00023604801390320063 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002466639271005988 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014133204240351915 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013707298785448074 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001336539862677455 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013453199062496424 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass[3-5-8] @@ -992,13 +992,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00023844500537961721 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002681369660422206 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013488996773958206 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012873101513832808 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001297459239140153 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013778801076114178 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass[3-6-9] @@ -1014,13 +1014,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002300030319020152 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00025412009563297033 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001291710650548339 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001278450945392251 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013307295739650726 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001282509183511138 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass_id @@ -1036,13 +1036,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00023506698198616505 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00024406297598034143 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012954301200807095 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001251619542017579 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013334304094314575 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013384304475039244 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass_id @@ -1058,13 +1058,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002523470902815461 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000251163961365819 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001300800358876586 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001265830360352993 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013619998935610056 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012941902969032526 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass_id @@ -1080,13 +1080,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002474220236763358 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00024956499692052603 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012912694364786148 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001293469686061144 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013625004794448614 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013048702385276556 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_fail @@ -1099,10 +1099,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010227295570075512 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001014400040730834 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0004804600030183792 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00045633595436811447 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1122,7 +1122,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:51: AssertionError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013169902376830578 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013647007290273905 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_division_zero @@ -1135,10 +1135,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011937902309000492 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001167230075225234 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015943008475005627 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015886698383837938 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/functions/math_utils.py @@ -1170,7 +1170,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ functions/math_utils.py:5: ZeroDivisionError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013354606926441193 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013587402645498514 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_multiply_xfail @@ -1185,10 +1185,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012910505756735802 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013320602010935545 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002753389999270439 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002824590774253011 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: skipped โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1210,7 +1210,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:60: AssertionError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013430498074740171 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013584911357611418 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_runtime_error @@ -1223,10 +1223,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011866597924381495 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001172930933535099 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001485190587118268 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014794792514294386 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1244,7 +1244,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:64: RuntimeError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013488205149769783 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013355608098208904 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_memory_error @@ -1257,10 +1257,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011891103349626064 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012036191765218973 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016273802611976862 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001472249859943986 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1279,7 +1279,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:68: MemoryError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001343520125374198 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001355229178443551 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_timeout_error @@ -1292,10 +1292,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012216810137033463 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012833601795136929 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000158025068230927 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001487709814682603 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1314,7 +1314,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:72: TimeoutError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001323530450463295 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001443210057914257 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_recursion_error @@ -1327,10 +1327,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011551205534487963 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011506897863000631 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0008184759644791484 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000796740991063416 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1365,7 +1365,7 @@ โ”‚ โ”‚ โ”‚ E RecursionError: maximum recursion depth exceeded โ”‚ โ”‚ โ”‚ !!! Recursion detected (same locals & position) โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014965597074478865 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015934999100863934 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_floating_point_error @@ -1378,10 +1378,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012089998926967382 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011973304208368063 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016288505867123604 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001488890266045928 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1400,7 +1400,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:82: FloatingPointError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015571503899991512 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013660895638167858 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_floating_point_overflow @@ -1413,10 +1413,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012269907165318727 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001231050118803978 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015873892698436975 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00018442899454385042 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1434,7 +1434,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:86: OverflowError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000138375093229115 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001341389724984765 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_value_error @@ -1447,10 +1447,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011761498171836138 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011857703793793917 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016015092842280865 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016147491987794638 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1470,7 +1470,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:90: ValueError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001519270008429885 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001325380289927125 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_wrong_argument_error @@ -1483,10 +1483,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012187298852950335 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011501496192067862 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00017895700875669718 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014797598123550415 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1504,7 +1504,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:94: TypeError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013919896446168423 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001359879970550537 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_unhandled_exception @@ -1517,10 +1517,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011769495904445648 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013235199730843306 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015696301124989986 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001546080457046628 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1538,7 +1538,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:98: Exception โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014282308984547853 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014670309610664845 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_custom_error @@ -1551,10 +1551,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011343194637447596 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011632998939603567 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016502290964126587 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015097495634108782 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1573,7 +1573,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:102: CustomError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013144605327397585 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001405490329489112 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_stop_iteration_direct @@ -1586,10 +1586,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001330230152234435 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012906896881759167 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016045104712247849 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016494200099259615 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: @@ -1676,7 +1676,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ cls = โ”‚ โ”‚ โ”‚ func = . at -โ”‚ โ”‚ โ”‚ 0x7fbbade229d0> +โ”‚ โ”‚ โ”‚ 0x7fac5afbb9d0> โ”‚ โ”‚ โ”‚ when = 'call' โ”‚ โ”‚ โ”‚ reraise = (, ) @@ -1759,7 +1759,7 @@ โ”‚ โ”‚ โ”‚ .pixi/envs/default/lib/python3.8/site-packages/_pytest/capture.p โ”‚ โ”‚ โ”‚ y:880: RuntimeError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00035480898804962635 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002637020079419017 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_generator_exit_direct @@ -1772,10 +1772,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00023323006462305784 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015517498832195997 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00027709698770195246 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001781380269676447 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1793,7 +1793,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:110: GeneratorExit โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0003132909769192338 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00018268602434545755 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_malformed_code @@ -1806,10 +1806,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00021424191072583199 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013178098015487194 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00028608902357518673 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00018824602011591196 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1833,7 +1833,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:114: SyntaxError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00028806598857045174 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014296395238488913 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_sys_exit @@ -1846,10 +1846,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00023051397874951363 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012288999278098345 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00028184300754219294 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016941793728619814 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1867,7 +1867,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:118: SystemExit โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002677349839359522 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013380905147641897 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_broken_function @@ -1880,10 +1880,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00021336995996534824 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001232329523190856 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002631540410220623 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015732890460640192 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1916,7 +1916,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:123: TypeError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000171064049936831 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013779709115624428 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_import_error @@ -1929,10 +1929,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001286650076508522 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011760694906115532 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016989000141620636 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001614170614629984 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1949,7 +1949,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_math_utils.py:127: ImportError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014758494216948748 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014843896497040987 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_module_not_found_error @@ -1962,10 +1962,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013205502182245255 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000123838079161942 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0004821020411327481 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0005040490068495274 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: @@ -2013,7 +2013,7 @@ โ”‚ โ”‚ โ”‚ _ _ _ _ _ _ _ _ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ name = 'non_existent_module_xyz' -โ”‚ โ”‚ โ”‚ import_ = +โ”‚ โ”‚ โ”‚ import_ = โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ > ??? โ”‚ โ”‚ โ”‚ E ModuleNotFoundError: No module named @@ -2021,7 +2021,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ :973: ModuleNotFoundError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015373306814581156 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002048340393230319 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_param.py::test_add[1-2] @@ -2037,13 +2037,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00029879703652113676 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0003470570081844926 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014498899690806866 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00018179207108914852 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014059594832360744 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016426295042037964 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_param.py::test_add[3-4] @@ -2059,13 +2059,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00022083206567913294 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002275860169902444 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013171799946576357 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001428480027243495 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001262199366465211 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001554370392113924 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_uppercase_normal @@ -2078,13 +2078,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001083860406652093 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011409400030970573 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014301203191280365 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001573330955579877 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 9.591691195964813e-05 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012732995674014091 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_uppercase_type_error @@ -2097,10 +2097,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010730198118835688 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013062707148492336 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014561298303306103 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00018049299251288176 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/functions/string_utils.py @@ -2132,7 +2132,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ functions/string_utils.py:3: TypeError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014019408263266087 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016367295756936073 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_reverse_string @@ -2145,13 +2145,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011643790639936924 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013171008322387934 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014409096911549568 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015937897842377424 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 9.977002628147602e-05 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010533002205193043 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_warning_emit @@ -2164,13 +2164,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010337494313716888 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010884297080338001 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001527759013697505 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001463419757783413 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 9.589409455657005e-05 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010895007289946079 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_unicode_decode_error @@ -2183,10 +2183,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010236504022032022 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010945799294859171 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001433260040357709 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001505690161138773 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_string_utils.py @@ -2206,7 +2206,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_string_utils.py:26: UnicodeDecodeError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001335239503532648 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015063898172229528 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: @@ -2220,10 +2220,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011540506966412067 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012140406761318445 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015034398529678583 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001555399503558874 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_string_utils.py @@ -2244,7 +2244,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_string_utils.py:30: UnicodeDecodeError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013162405230104923 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013213895726948977 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_import_warning @@ -2257,13 +2257,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011919799726456404 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000117360963486135 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013791793026030064 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014026195276528597 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010078400373458862 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010643398854881525 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_xfail_uppercase_digits @@ -2278,10 +2278,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001156550133600831 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001289290376007557 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0006164630176499486 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0006400829879567027 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: skipped โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: /workspace/tligui_y/slic/tests/test_string_utils.py @@ -2310,7 +2310,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ tests/test_string_utils.py:39: AssertionError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014216196723282337 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014669797383248806 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ””โ”€โ”€ - โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_keyboard_interrupt_direct @@ -2323,7 +2323,7 @@ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ””โ”€โ”€ setup -โ”‚ โ”œโ”€โ”€ duration: 0.0001147179864346981 +โ”‚ โ”œโ”€โ”€ duration: 0.00012203503865748644 โ”‚ โ””โ”€โ”€ outcome: passed โ””โ”€โ”€ warnings โ””โ”€โ”€ - diff --git a/ci-reports/markdown/pytest-report.json b/ci-reports/markdown/pytest-report.json index aecfa90e..53ef5fdb 100644 --- a/ci-reports/markdown/pytest-report.json +++ b/ci-reports/markdown/pytest-report.json @@ -1 +1 @@ -{"created": 1752690321.1175065, "duration": 0.8185153007507324, "exitcode": 2, "root": "/workspace/tligui_y/slic", "environment": {}, "summary": {"passed": 18, "failed": 31, "xfailed": 2, "total": 51, "collected": 51}, "collectors": [{"nodeid": "", "outcome": "passed", "result": [{"nodeid": ".", "type": "Dir"}]}, {"nodeid": "ci-reports/allure/data", "outcome": "passed", "result": []}, {"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/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/markdown", "type": "Dir"}]}, {"nodeid": "functions", "outcome": "passed", "result": []}, {"nodeid": "tests/test_broken_fct.py", "outcome": "failed", "result": [], "longrepr": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/python.py:493: in importtestmodule\n mod = import_path(\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/pathlib.py:587: in import_path\n importlib.import_module(module_name)\n.pixi/envs/default/lib/python3.8/importlib/__init__.py:127: in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\n:1014: in _gcd_import\n ???\n:991: in _find_and_load\n ???\n:975: in _find_and_load_unlocked\n ???\n:671: in _load_unlocked\n ???\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/assertion/rewrite.py:175: in exec_module\n source_stat, co = _rewrite_test(fn, self.config)\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/assertion/rewrite.py:355: in _rewrite_test\n tree = ast.parse(source, filename=strfn)\n.pixi/envs/default/lib/python3.8/ast.py:47: in parse\n return compile(source, filename, mode, flags,\nE File \"/workspace/tligui_y/slic/tests/test_broken_fct.py\", line 8\nE def test_valid_2():\nE ^\nE SyntaxError: invalid syntax"}, {"nodeid": "tests/test_collector_error.py", "outcome": "failed", "result": [], "longrepr": "ImportError while importing test module '/workspace/tligui_y/slic/tests/test_collector_error.py'.\nHint: make sure your test modules/packages have valid Python names.\nTraceback:\n.pixi/envs/default/lib/python3.8/importlib/__init__.py:127: in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\ntests/test_collector_error.py:1: in \n from no_existing_module.math_utils import *\nE ModuleNotFoundError: No module named 'no_existing_module'"}, {"nodeid": "tests/test_io_utils.py", "outcome": "passed", "result": [{"nodeid": "tests/test_io_utils.py::test_read_file", "type": "Function", "lineno": 9}, {"nodeid": "tests/test_io_utils.py::test_write_file", "type": "Function", "lineno": 16}, {"nodeid": "tests/test_io_utils.py::test_cause_io_error", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_io_utils.py::test_file_not_found", "type": "Function", "lineno": 26}, {"nodeid": "tests/test_io_utils.py::test_permission_error", "type": "Function", "lineno": 30}, {"nodeid": "tests/test_io_utils.py::test_mock_open_error", "type": "Function", "lineno": 37}, {"nodeid": "tests/test_io_utils.py::test_file_handle_closed_error", "type": "Function", "lineno": 45}, {"nodeid": "tests/test_io_utils.py::test_os_error", "type": "Function", "lineno": 51}, {"nodeid": "tests/test_io_utils.py::test_write_file_readonly", "type": "Function", "lineno": 58}, {"nodeid": "tests/test_io_utils.py::test_file_not_found_error", "type": "Function", "lineno": 66}]}, {"nodeid": "tests/test_math_utils.py", "outcome": "passed", "result": [{"nodeid": "tests/test_math_utils.py::test_broken", "type": "Function", "lineno": 13}, {"nodeid": "tests/test_math_utils.py::test_call_missing_function", "type": "Function", "lineno": 17}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[2-2-4]", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[1-5-6]", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[3-4-7]", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[3-5-8]", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[3-6-9]", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_math_utils.py::test_addition_pass_id[a=2,b=2,expected=4]", "type": "Function", "lineno": 36}, {"nodeid": "tests/test_math_utils.py::test_addition_pass_id[a=1,b=5,expected=6]", "type": "Function", "lineno": 36}, {"nodeid": "tests/test_math_utils.py::test_addition_pass_id[a=3,b=4,expected=7]", "type": "Function", "lineno": 36}, {"nodeid": "tests/test_math_utils.py::test_addition_fail", "type": "Function", "lineno": 48}, {"nodeid": "tests/test_math_utils.py::test_division_zero", "type": "Function", "lineno": 52}, {"nodeid": "tests/test_math_utils.py::test_multiply_xfail", "type": "Function", "lineno": 56}, {"nodeid": "tests/test_math_utils.py::test_runtime_error", "type": "Function", "lineno": 61}, {"nodeid": "tests/test_math_utils.py::test_memory_error", "type": "Function", "lineno": 65}, {"nodeid": "tests/test_math_utils.py::test_timeout_error", "type": "Function", "lineno": 69}, {"nodeid": "tests/test_math_utils.py::test_recursion_error", "type": "Function", "lineno": 73}, {"nodeid": "tests/test_math_utils.py::test_floating_point_error", "type": "Function", "lineno": 79}, {"nodeid": "tests/test_math_utils.py::test_floating_point_overflow", "type": "Function", "lineno": 83}, {"nodeid": "tests/test_math_utils.py::test_value_error", "type": "Function", "lineno": 87}, {"nodeid": "tests/test_math_utils.py::test_wrong_argument_error", "type": "Function", "lineno": 91}, {"nodeid": "tests/test_math_utils.py::test_unhandled_exception", "type": "Function", "lineno": 95}, {"nodeid": "tests/test_math_utils.py::test_custom_error", "type": "Function", "lineno": 99}, {"nodeid": "tests/test_math_utils.py::test_stop_iteration_direct", "type": "Function", "lineno": 103}, {"nodeid": "tests/test_math_utils.py::test_generator_exit_direct", "type": "Function", "lineno": 107}, {"nodeid": "tests/test_math_utils.py::test_malformed_code", "type": "Function", "lineno": 111}, {"nodeid": "tests/test_math_utils.py::test_sys_exit", "type": "Function", "lineno": 115}, {"nodeid": "tests/test_math_utils.py::test_broken_function", "type": "Function", "lineno": 119}, {"nodeid": "tests/test_math_utils.py::test_import_error", "type": "Function", "lineno": 125}, {"nodeid": "tests/test_math_utils.py::test_module_not_found_error", "type": "Function", "lineno": 128}]}, {"nodeid": "tests/test_param.py", "outcome": "passed", "result": [{"nodeid": "tests/test_param.py::test_add[1-2]", "type": "Function", "lineno": 2}, {"nodeid": "tests/test_param.py::test_add[3-4]", "type": "Function", "lineno": 2}]}, {"nodeid": "tests/test_string_utils.py", "outcome": "passed", "result": [{"nodeid": "tests/test_string_utils.py::test_uppercase_normal", "type": "Function", "lineno": 7}, {"nodeid": "tests/test_string_utils.py::test_uppercase_type_error", "type": "Function", "lineno": 11}, {"nodeid": "tests/test_string_utils.py::test_reverse_string", "type": "Function", "lineno": 15}, {"nodeid": "tests/test_string_utils.py::test_warning_emit", "type": "Function", "lineno": 19}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_error", "type": "Function", "lineno": 23}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_surrogateescape", "type": "Function", "lineno": 27}, {"nodeid": "tests/test_string_utils.py::test_import_warning", "type": "Function", "lineno": 31}, {"nodeid": "tests/test_string_utils.py::test_xfail_uppercase_digits", "type": "Function", "lineno": 35}, {"nodeid": "tests/test_string_utils.py::test_keyboard_interrupt_direct", "type": "Function", "lineno": 40}]}, {"nodeid": "tests", "outcome": "passed", "result": [{"nodeid": "tests/test_broken_fct.py", "type": "Module"}, {"nodeid": "tests/test_collector_error.py", "type": "Module"}, {"nodeid": "tests/test_io_utils.py", "type": "Module"}, {"nodeid": "tests/test_math_utils.py", "type": "Module"}, {"nodeid": "tests/test_param.py", "type": "Module"}, {"nodeid": "tests/test_string_utils.py", "type": "Module"}]}, {"nodeid": ".", "outcome": "passed", "result": [{"nodeid": "ci-reports", "type": "Dir"}, {"nodeid": "functions", "type": "Package"}, {"nodeid": "tests", "type": "Dir"}]}], "tests": [{"nodeid": "tests/test_io_utils.py::test_read_file", "lineno": 9, "outcome": "passed", "keywords": ["test_read_file", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.003710041055455804, "outcome": "passed"}, "call": {"duration": 0.0004371920367702842, "outcome": "passed"}, "teardown": {"duration": 0.00024405296426266432, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_write_file", "lineno": 16, "outcome": "passed", "keywords": ["test_write_file", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0005132569931447506, "outcome": "passed"}, "call": {"duration": 0.0002967710606753826, "outcome": "passed"}, "teardown": {"duration": 0.0001389649696648121, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_cause_io_error", "lineno": 22, "outcome": "failed", "keywords": ["test_cause_io_error", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00010901608038693666, "outcome": "passed"}, "call": {"duration": 0.00016140704974532127, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/functions/io_utils.py", "lineno": 10, "message": "OSError: Forced IO Error for testing"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 25, "message": ""}, {"path": "functions/io_utils.py", "lineno": 10, "message": "OSError"}], "longrepr": "def test_cause_io_error():\n # Raises manual IOError to simulate IO failure\n> cause_io_error()\n\ntests/test_io_utils.py:25: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\n def cause_io_error():\n> raise IOError(\"Forced IO Error for testing\")\nE OSError: Forced IO Error for testing\n\nfunctions/io_utils.py:10: OSError"}, "teardown": {"duration": 0.00014134205412119627, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_file_not_found", "lineno": 26, "outcome": "failed", "keywords": ["test_file_not_found", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012427300680428743, "outcome": "passed"}, "call": {"duration": 0.0001827320083975792, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/functions/io_utils.py", "lineno": 2, "message": "FileNotFoundError: [Errno 2] No such file or directory: 'nonexistent.file'"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 29, "message": ""}, {"path": "functions/io_utils.py", "lineno": 2, "message": "FileNotFoundError"}], "longrepr": "def test_file_not_found():\n # Reading non-existing file raises FileNotFoundError\n> read_file(\"nonexistent.file\")\n\ntests/test_io_utils.py:29: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\npath = 'nonexistent.file'\n\n def read_file(path):\n> with open(path, \"r\", encoding=\"utf-8\") as f:\nE FileNotFoundError: [Errno 2] No such file or directory: 'nonexistent.file'\n\nfunctions/io_utils.py:2: FileNotFoundError"}, "teardown": {"duration": 0.00014790799468755722, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_permission_error", "lineno": 30, "outcome": "failed", "keywords": ["test_permission_error", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0002062659477815032, "outcome": "passed"}, "call": {"duration": 0.00017533497884869576, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_io_utils.py", "lineno": 34, "message": "PermissionError: Permission denied"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 36, "message": ""}, {"path": "functions/io_utils.py", "lineno": 2, "message": "in read_file"}, {"path": "tests/test_io_utils.py", "lineno": 34, "message": "PermissionError"}], "longrepr": "monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fbbb0292340>\n\n def test_permission_error(monkeypatch):\n # Patch open to raise PermissionError simulating access denial\n def raise_perm_error(*args, **kwargs):\n raise PermissionError(\"Permission denied\")\n monkeypatch.setattr(\"builtins.open\", raise_perm_error)\n> read_file(\"anyfile.txt\")\n\ntests/test_io_utils.py:36: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \nfunctions/io_utils.py:2: in read_file\n with open(path, \"r\", encoding=\"utf-8\") as f:\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nargs = ('anyfile.txt', 'r'), kwargs = {'encoding': 'utf-8'}\n\n def raise_perm_error(*args, **kwargs):\n> raise PermissionError(\"Permission denied\")\nE PermissionError: Permission denied\n\ntests/test_io_utils.py:34: PermissionError"}, "teardown": {"duration": 0.00016287504695355892, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_mock_open_error", "lineno": 37, "outcome": "failed", "keywords": ["test_mock_open_error", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00019304396118968725, "outcome": "passed"}, "call": {"duration": 0.0033886550227180123, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/unittest/mock.py", "lineno": 1140, "message": "OSError: Mocked IOError"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 43, "message": ""}, {"path": ".pixi/envs/default/lib/python3.8/unittest/mock.py", "lineno": 1081, "message": "in __call__"}, {"path": ".pixi/envs/default/lib/python3.8/unittest/mock.py", "lineno": 1085, "message": "in _mock_call"}, {"path": ".pixi/envs/default/lib/python3.8/unittest/mock.py", "lineno": 1140, "message": "OSError"}], "longrepr": "monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fbbb02b49d0>\n\n def test_mock_open_error(monkeypatch):\n # Mock open() to raise IOError simulating read error\n mocked_open = mock.mock_open()\n mocked_open.side_effect = IOError(\"Mocked IOError\")\n monkeypatch.setattr(\"builtins.open\", mocked_open)\n> with open(\"file.txt\", \"r\") as f:\n\ntests/test_io_utils.py:43: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n.pixi/envs/default/lib/python3.8/unittest/mock.py:1081: in __call__\n return self._mock_call(*args, **kwargs)\n.pixi/envs/default/lib/python3.8/unittest/mock.py:1085: in _mock_call\n return self._execute_mock_call(*args, **kwargs)\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = \nargs = ('file.txt', 'r'), kwargs = {}, effect = OSError('Mocked IOError')\n\n def _execute_mock_call(self, /, *args, **kwargs):\n # separate from _increment_mock_call so that awaited functions are\n # executed separately from their call, also AsyncMock overrides this method\n \n effect = self.side_effect\n if effect is not None:\n if _is_exception(effect):\n> raise effect\nE OSError: Mocked IOError\n\n.pixi/envs/default/lib/python3.8/unittest/mock.py:1140: OSError"}, "teardown": {"duration": 0.0003110439283773303, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_file_handle_closed_error", "lineno": 45, "outcome": "failed", "keywords": ["test_file_handle_closed_error", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00017978600226342678, "outcome": "passed"}, "call": {"duration": 0.00019238307140767574, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_io_utils.py", "lineno": 50, "message": "ValueError: I/O operation on closed file"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 50, "message": "ValueError"}], "longrepr": "def test_file_handle_closed_error():\n # Accessing closed file raises ValueError\n f = io.StringIO(\"content\")\n f.close()\n> f.read()\nE ValueError: I/O operation on closed file\n\ntests/test_io_utils.py:50: ValueError"}, "teardown": {"duration": 0.00017690705135464668, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_os_error", "lineno": 51, "outcome": "failed", "keywords": ["test_os_error", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0002966850297525525, "outcome": "passed"}, "call": {"duration": 0.00019705796148627996, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_io_utils.py", "lineno": 55, "message": "OSError: Simulated OSError"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 57, "message": ""}, {"path": "tests/test_io_utils.py", "lineno": 55, "message": "OSError"}], "longrepr": "monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fbbad90abb0>\n\n def test_os_error(monkeypatch):\n # Patch os.remove to raise OSError simulating filesystem error\n def raise_os_error(path):\n raise OSError(\"Simulated OSError\")\n monkeypatch.setattr(\"os.remove\", raise_os_error)\n> os.remove(\"file.txt\")\n\ntests/test_io_utils.py:57: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\npath = 'file.txt'\n\n def raise_os_error(path):\n> raise OSError(\"Simulated OSError\")\nE OSError: Simulated OSError\n\ntests/test_io_utils.py:55: OSError"}, "teardown": {"duration": 0.00017324707005172968, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_write_file_readonly", "lineno": 58, "outcome": "passed", "keywords": ["test_write_file_readonly", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0006697800708934665, "outcome": "passed"}, "call": {"duration": 0.0011413779575377703, "outcome": "passed"}, "teardown": {"duration": 0.0001551950117573142, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_file_not_found_error", "lineno": 66, "outcome": "failed", "keywords": ["test_file_not_found_error", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011528993491083384, "outcome": "passed"}, "call": {"duration": 0.00016769208014011383, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_io_utils.py", "lineno": 69, "message": "FileNotFoundError: [Errno 2] No such file or directory: 'no_such_file.txt'"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 69, "message": "FileNotFoundError"}], "longrepr": "def test_file_not_found_error():\n # Raises FileNotFoundError when opening a non-existent file\n> open(\"no_such_file.txt\", \"r\")\nE FileNotFoundError: [Errno 2] No such file or directory: 'no_such_file.txt'\n\ntests/test_io_utils.py:69: FileNotFoundError"}, "teardown": {"duration": 0.0001352480612695217, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_broken", "lineno": 13, "outcome": "failed", "keywords": ["test_broken", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001260349527001381, "outcome": "passed"}, "call": {"duration": 0.0001509200083091855, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 16, "message": "NameError: name 'want_the_test_to_fail' is not defined"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 16, "message": "NameError"}], "longrepr": "def test_broken():\n # simulating a broken or faulty test implementation that will cause the test to error\n> want_the_test_to_fail\nE NameError: name 'want_the_test_to_fail' is not defined\n\ntests/test_math_utils.py:16: NameError"}, "teardown": {"duration": 0.00013555807527154684, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_call_missing_function", "lineno": 17, "outcome": "failed", "keywords": ["test_call_missing_function", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012164399959146976, "outcome": "passed"}, "call": {"duration": 0.0001585870049893856, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 20, "message": "AttributeError: module 'functions.math_utils' has no attribute 'non_existent_function'"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 20, "message": "AttributeError"}], "longrepr": "def test_call_missing_function():\n # Accessing a missing function attribute raises AttributeError\n> getattr(math_utils, \"non_existent_function\")()\nE AttributeError: module 'functions.math_utils' has no attribute 'non_existent_function'\n\ntests/test_math_utils.py:20: AttributeError"}, "teardown": {"duration": 0.00013517099432647228, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[2-2-4]", "lineno": 22, "outcome": "passed", "keywords": ["test_addition_pass[2-2-4]", "parametrize", "pytestmark", "2-2-4", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00030864193104207516, "outcome": "passed"}, "call": {"duration": 0.0001509459689259529, "outcome": "passed"}, "teardown": {"duration": 0.0001433800207450986, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[1-5-6]", "lineno": 22, "outcome": "passed", "keywords": ["test_addition_pass[1-5-6]", "parametrize", "pytestmark", "1-5-6", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0002519839908927679, "outcome": "passed"}, "call": {"duration": 0.00014179409481585026, "outcome": "passed"}, "teardown": {"duration": 0.00013263407163321972, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[3-4-7]", "lineno": 22, "outcome": "passed", "keywords": ["test_addition_pass[3-4-7]", "parametrize", "pytestmark", "3-4-7", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00023604801390320063, "outcome": "passed"}, "call": {"duration": 0.00014133204240351915, "outcome": "passed"}, "teardown": {"duration": 0.0001336539862677455, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[3-5-8]", "lineno": 22, "outcome": "passed", "keywords": ["test_addition_pass[3-5-8]", "parametrize", "pytestmark", "3-5-8", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00023844500537961721, "outcome": "passed"}, "call": {"duration": 0.00013488996773958206, "outcome": "passed"}, "teardown": {"duration": 0.0001297459239140153, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[3-6-9]", "lineno": 22, "outcome": "passed", "keywords": ["test_addition_pass[3-6-9]", "parametrize", "pytestmark", "3-6-9", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0002300030319020152, "outcome": "passed"}, "call": {"duration": 0.0001291710650548339, "outcome": "passed"}, "teardown": {"duration": 0.00013307295739650726, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass_id[a=2,b=2,expected=4]", "lineno": 36, "outcome": "passed", "keywords": ["test_addition_pass_id[a=2,b=2,expected=4]", "parametrize", "pytestmark", "a=2,b=2,expected=4", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00023506698198616505, "outcome": "passed"}, "call": {"duration": 0.00012954301200807095, "outcome": "passed"}, "teardown": {"duration": 0.00013334304094314575, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass_id[a=1,b=5,expected=6]", "lineno": 36, "outcome": "passed", "keywords": ["test_addition_pass_id[a=1,b=5,expected=6]", "parametrize", "pytestmark", "a=1,b=5,expected=6", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0002523470902815461, "outcome": "passed"}, "call": {"duration": 0.0001300800358876586, "outcome": "passed"}, "teardown": {"duration": 0.00013619998935610056, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass_id[a=3,b=4,expected=7]", "lineno": 36, "outcome": "passed", "keywords": ["test_addition_pass_id[a=3,b=4,expected=7]", "parametrize", "pytestmark", "a=3,b=4,expected=7", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0002474220236763358, "outcome": "passed"}, "call": {"duration": 0.00012912694364786148, "outcome": "passed"}, "teardown": {"duration": 0.00013625004794448614, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_fail", "lineno": 48, "outcome": "failed", "keywords": ["test_addition_fail", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00010227295570075512, "outcome": "passed"}, "call": {"duration": 0.0004804600030183792, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 51, "message": "assert 4 == 5\n + where 4 = addition(2, 2)"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 51, "message": "AssertionError"}], "longrepr": "def test_addition_fail():\n # Assertion failure: expected incorrect result\n> assert addition(2, 2) == 5\nE assert 4 == 5\nE + where 4 = addition(2, 2)\n\ntests/test_math_utils.py:51: AssertionError"}, "teardown": {"duration": 0.00013169902376830578, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_division_zero", "lineno": 52, "outcome": "failed", "keywords": ["test_division_zero", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011937902309000492, "outcome": "passed"}, "call": {"duration": 0.00015943008475005627, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/functions/math_utils.py", "lineno": 5, "message": "ZeroDivisionError: division by zero"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 55, "message": ""}, {"path": "functions/math_utils.py", "lineno": 5, "message": "ZeroDivisionError"}], "longrepr": "def test_division_zero():\n # Will raise ZeroDivisionError if not handled in division\n> division(1, 0)\n\ntests/test_math_utils.py:55: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\na = 1, b = 0\n\n def division(a, b):\n> return a / b\nE ZeroDivisionError: division by zero\n\nfunctions/math_utils.py:5: ZeroDivisionError"}, "teardown": {"duration": 0.00013354606926441193, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_multiply_xfail", "lineno": 56, "outcome": "xfailed", "keywords": ["test_multiply_xfail", "xfail", "pytestmark", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012910505756735802, "outcome": "passed"}, "call": {"duration": 0.0002753389999270439, "outcome": "skipped", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 60, "message": "assert 4 == 5\n + where 4 = multiply(2, 2)"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 60, "message": "AssertionError"}], "longrepr": "@pytest.mark.xfail(reason=\"Expected failure\")\n def test_multiply_xfail():\n # Expected fail test (xfail): incorrect expected multiply result\n> assert multiply(2, 2) == 5\nE assert 4 == 5\nE + where 4 = multiply(2, 2)\n\ntests/test_math_utils.py:60: AssertionError"}, "teardown": {"duration": 0.00013430498074740171, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_runtime_error", "lineno": 61, "outcome": "failed", "keywords": ["test_runtime_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011866597924381495, "outcome": "passed"}, "call": {"duration": 0.0001485190587118268, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 64, "message": "RuntimeError: Forced runtime error"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 64, "message": "RuntimeError"}], "longrepr": "def test_runtime_error():\n # Test raises an uncaught RuntimeError\n> raise RuntimeError(\"Forced runtime error\")\nE RuntimeError: Forced runtime error\n\ntests/test_math_utils.py:64: RuntimeError"}, "teardown": {"duration": 0.00013488205149769783, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_memory_error", "lineno": 65, "outcome": "failed", "keywords": ["test_memory_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011891103349626064, "outcome": "passed"}, "call": {"duration": 0.00016273802611976862, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 68, "message": "MemoryError: Simulated memory error"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 68, "message": "MemoryError"}], "longrepr": "def test_memory_error():\n # Manually raise MemoryError to simulate out-of-memory condition\n> raise MemoryError(\"Simulated memory error\")\nE MemoryError: Simulated memory error\n\ntests/test_math_utils.py:68: MemoryError"}, "teardown": {"duration": 0.0001343520125374198, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_timeout_error", "lineno": 69, "outcome": "failed", "keywords": ["test_timeout_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012216810137033463, "outcome": "passed"}, "call": {"duration": 0.000158025068230927, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 72, "message": "TimeoutError: Simulated timeout error"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 72, "message": "TimeoutError"}], "longrepr": "def test_timeout_error():\n # Manually raise TimeoutError simulating timeout conditions\n> raise TimeoutError(\"Simulated timeout error\")\nE TimeoutError: Simulated timeout error\n\ntests/test_math_utils.py:72: TimeoutError"}, "teardown": {"duration": 0.0001323530450463295, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_recursion_error", "lineno": 73, "outcome": "failed", "keywords": ["test_recursion_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011551205534487963, "outcome": "passed"}, "call": {"duration": 0.0008184759644791484, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 77, "message": "RecursionError: maximum recursion depth exceeded"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 78, "message": ""}, {"path": "tests/test_math_utils.py", "lineno": 77, "message": "in recursive"}, {"path": "tests/test_math_utils.py", "lineno": 77, "message": "in recursive"}], "longrepr": "def test_recursion_error():\n # Infinite recursion triggers RecursionError\n def recursive():\n return recursive()\n> recursive()\n\ntests/test_math_utils.py:78: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \ntests/test_math_utils.py:77: in recursive\n return recursive()\ntests/test_math_utils.py:77: in recursive\n return recursive()\nE RecursionError: maximum recursion depth exceeded\n!!! Recursion detected (same locals & position)"}, "teardown": {"duration": 0.00014965597074478865, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_floating_point_error", "lineno": 79, "outcome": "failed", "keywords": ["test_floating_point_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012089998926967382, "outcome": "passed"}, "call": {"duration": 0.00016288505867123604, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 82, "message": "FloatingPointError: Simulated floating point error"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 82, "message": "FloatingPointError"}], "longrepr": "def test_floating_point_error():\n # Manually raise FloatingPointError\n> raise FloatingPointError(\"Simulated floating point error\")\nE FloatingPointError: Simulated floating point error\n\ntests/test_math_utils.py:82: FloatingPointError"}, "teardown": {"duration": 0.00015571503899991512, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_floating_point_overflow", "lineno": 83, "outcome": "failed", "keywords": ["test_floating_point_overflow", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012269907165318727, "outcome": "passed"}, "call": {"duration": 0.00015873892698436975, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 86, "message": "OverflowError: math range error"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 86, "message": "OverflowError"}], "longrepr": "def test_floating_point_overflow():\n # Exponential overflow triggers OverflowError\n> math.exp(1000)\nE OverflowError: math range error\n\ntests/test_math_utils.py:86: OverflowError"}, "teardown": {"duration": 0.000138375093229115, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_value_error", "lineno": 87, "outcome": "failed", "keywords": ["test_value_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011761498171836138, "outcome": "passed"}, "call": {"duration": 0.00016015092842280865, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 90, "message": "ValueError: invalid literal for int() with base 10: 'invalid'"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 90, "message": "ValueError"}], "longrepr": "def test_value_error():\n # ValueError on invalid integer conversion\n> int(\"invalid\")\nE ValueError: invalid literal for int() with base 10: 'invalid'\n\ntests/test_math_utils.py:90: ValueError"}, "teardown": {"duration": 0.0001519270008429885, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_wrong_argument_error", "lineno": 91, "outcome": "failed", "keywords": ["test_wrong_argument_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012187298852950335, "outcome": "passed"}, "call": {"duration": 0.00017895700875669718, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 94, "message": "TypeError: 'int' object is not iterable"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 94, "message": "TypeError"}], "longrepr": "def test_wrong_argument_error():\n # TypeError when passing wrong argument type to sum\n> sum(5)\nE TypeError: 'int' object is not iterable\n\ntests/test_math_utils.py:94: TypeError"}, "teardown": {"duration": 0.00013919896446168423, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_unhandled_exception", "lineno": 95, "outcome": "failed", "keywords": ["test_unhandled_exception", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011769495904445648, "outcome": "passed"}, "call": {"duration": 0.00015696301124989986, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 98, "message": "Exception: Generic unhandled exception"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 98, "message": "Exception"}], "longrepr": "def test_unhandled_exception():\n # Raises generic unhandled Exception\n> raise Exception(\"Generic unhandled exception\")\nE Exception: Generic unhandled exception\n\ntests/test_math_utils.py:98: Exception"}, "teardown": {"duration": 0.00014282308984547853, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_custom_error", "lineno": 99, "outcome": "failed", "keywords": ["test_custom_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011343194637447596, "outcome": "passed"}, "call": {"duration": 0.00016502290964126587, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 102, "message": "test_math_utils.CustomError: Custom error simulation"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 102, "message": "CustomError"}], "longrepr": "def test_custom_error():\n # Raises user-defined CustomError exception\n> raise CustomError(\"Custom error simulation\")\nE test_math_utils.CustomError: Custom error simulation\n\ntests/test_math_utils.py:102: CustomError"}, "teardown": {"duration": 0.00013144605327397585, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_stop_iteration_direct", "lineno": 103, "outcome": "failed", "keywords": ["test_stop_iteration_direct", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001330230152234435, "outcome": "passed"}, "call": {"duration": 0.00016045104712247849, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/_pytest/capture.py", "lineno": 880, "message": "RuntimeError: generator raised StopIteration"}, "traceback": [{"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/runner.py", "lineno": 341, "message": ""}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/runner.py", "lineno": 242, "message": "in "}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/pluggy/_hooks.py", "lineno": 513, "message": "in __call__"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/pluggy/_manager.py", "lineno": 120, "message": "in _hookexec"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/threadexception.py", "lineno": 92, "message": "in pytest_runtest_call"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/threadexception.py", "lineno": 68, "message": "in thread_exception_runtest_hook"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/unraisableexception.py", "lineno": 95, "message": "in pytest_runtest_call"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/unraisableexception.py", "lineno": 70, "message": "in unraisable_exception_runtest_hook"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/logging.py", "lineno": 846, "message": "in pytest_runtest_call"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/logging.py", "lineno": 829, "message": "in _runtest_for"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/capture.py", "lineno": 880, "message": "RuntimeError"}], "longrepr": "def test_stop_iteration_direct():\n # Directly raise StopIteration exception\n> raise StopIteration()\nE StopIteration\n\ntests/test_math_utils.py:106: StopIteration\n\nThe above exception was the direct cause of the following exception:\n\ncls = \nfunc = . at 0x7fbbade229d0>\nwhen = 'call'\nreraise = (, )\n\n @classmethod\n def from_call(\n cls,\n func: Callable[[], TResult],\n when: Literal[\"collect\", \"setup\", \"call\", \"teardown\"],\n reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None,\n ) -> CallInfo[TResult]:\n \"\"\"Call func, wrapping the result in a CallInfo.\n \n :param func:\n The function to call. Called without arguments.\n :type func: Callable[[], _pytest.runner.TResult]\n :param when:\n The phase in which the function is called.\n :param reraise:\n Exception or exceptions that shall propagate if raised by the\n function, instead of being wrapped in the CallInfo.\n \"\"\"\n excinfo = None\n start = timing.time()\n precise_start = timing.perf_counter()\n try:\n> result: TResult | None = func()\n\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/runner.py:341: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n.pixi/envs/default/lib/python3.8/site-packages/_pytest/runner.py:242: in \n lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise\n.pixi/envs/default/lib/python3.8/site-packages/pluggy/_hooks.py:513: in __call__\n return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)\n.pixi/envs/default/lib/python3.8/site-packages/pluggy/_manager.py:120: in _hookexec\n return self._inner_hookexec(hook_name, methods, kwargs, firstresult)\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/threadexception.py:92: in pytest_runtest_call\n yield from thread_exception_runtest_hook()\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/threadexception.py:68: in thread_exception_runtest_hook\n yield\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/unraisableexception.py:95: in pytest_runtest_call\n yield from unraisable_exception_runtest_hook()\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/unraisableexception.py:70: in unraisable_exception_runtest_hook\n yield\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/logging.py:846: in pytest_runtest_call\n yield from self._runtest_for(item, \"call\")\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/logging.py:829: in _runtest_for\n yield\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = _capture_fixture=None>\nitem = \n\n @hookimpl(wrapper=True)\n def pytest_runtest_call(self, item: Item) -> Generator[None]:\n with self.item_capture(\"call\", item):\n> return (yield)\nE RuntimeError: generator raised StopIteration\n\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/capture.py:880: RuntimeError"}, "teardown": {"duration": 0.00035480898804962635, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_generator_exit_direct", "lineno": 107, "outcome": "failed", "keywords": ["test_generator_exit_direct", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00023323006462305784, "outcome": "passed"}, "call": {"duration": 0.00027709698770195246, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 110, "message": "GeneratorExit"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 110, "message": "GeneratorExit"}], "longrepr": "def test_generator_exit_direct():\n # Directly raise GeneratorExit exception\n> raise GeneratorExit()\nE GeneratorExit\n\ntests/test_math_utils.py:110: GeneratorExit"}, "teardown": {"duration": 0.0003132909769192338, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_malformed_code", "lineno": 111, "outcome": "failed", "keywords": ["test_malformed_code", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00021424191072583199, "outcome": "passed"}, "call": {"duration": 0.00028608902357518673, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 114, "message": " File \"\", line 1\n def bad(:\n ^\nSyntaxError: invalid syntax"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 114, "message": "SyntaxError"}], "longrepr": "def test_malformed_code():\n # SyntaxError when executing malformed Python code\n> exec(\"def bad(:\\n pass\")\nE File \"\", line 1\nE def bad(:\nE ^\nE SyntaxError: invalid syntax\n\ntests/test_math_utils.py:114: SyntaxError"}, "teardown": {"duration": 0.00028806598857045174, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_sys_exit", "lineno": 115, "outcome": "failed", "keywords": ["test_sys_exit", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00023051397874951363, "outcome": "passed"}, "call": {"duration": 0.00028184300754219294, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 118, "message": "SystemExit: 1"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 118, "message": "SystemExit"}], "longrepr": "def test_sys_exit():\n # Simulate SystemExit via sys.exit\n> sys.exit(1)\nE SystemExit: 1\n\ntests/test_math_utils.py:118: SystemExit"}, "teardown": {"duration": 0.0002677349839359522, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_broken_function", "lineno": 119, "outcome": "failed", "keywords": ["test_broken_function", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00021336995996534824, "outcome": "passed"}, "call": {"duration": 0.0002631540410220623, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 123, "message": "TypeError: Broken function"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 124, "message": ""}, {"path": "tests/test_math_utils.py", "lineno": 123, "message": "TypeError"}], "longrepr": "def test_broken_function():\n # Simulate broken function raising TypeError\n def broken_func(*args, **kwargs):\n raise TypeError(\"Broken function\")\n> broken_func()\n\ntests/test_math_utils.py:124: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nargs = (), kwargs = {}\n\n def broken_func(*args, **kwargs):\n> raise TypeError(\"Broken function\")\nE TypeError: Broken function\n\ntests/test_math_utils.py:123: TypeError"}, "teardown": {"duration": 0.000171064049936831, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_import_error", "lineno": 125, "outcome": "failed", "keywords": ["test_import_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001286650076508522, "outcome": "passed"}, "call": {"duration": 0.00016989000141620636, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 127, "message": "ImportError: Simulated ImportError"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 127, "message": "ImportError"}], "longrepr": "def test_import_error():\n> raise ImportError(\"Simulated ImportError\")\nE ImportError: Simulated ImportError\n\ntests/test_math_utils.py:127: ImportError"}, "teardown": {"duration": 0.00014758494216948748, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_module_not_found_error", "lineno": 128, "outcome": "failed", "keywords": ["test_module_not_found_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00013205502182245255, "outcome": "passed"}, "call": {"duration": 0.0004821020411327481, "outcome": "failed", "crash": {"path": "", "lineno": 973, "message": "ModuleNotFoundError: No module named 'non_existent_module_xyz'"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 131, "message": ""}, {"path": ".pixi/envs/default/lib/python3.8/importlib/__init__.py", "lineno": 127, "message": "in import_module"}, {"path": "", "lineno": 1014, "message": "in _gcd_import"}, {"path": "", "lineno": 991, "message": "in _find_and_load"}, {"path": "", "lineno": 973, "message": "ModuleNotFoundError"}], "longrepr": "def test_module_not_found_error():\n # Raises ModuleNotFoundError (subclass of ImportError) for missing module\n> importlib.import_module(\"non_existent_module_xyz\")\n\ntests/test_math_utils.py:131: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n.pixi/envs/default/lib/python3.8/importlib/__init__.py:127: in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\n:1014: in _gcd_import\n ???\n:991: in _find_and_load\n ???\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nname = 'non_existent_module_xyz'\nimport_ = \n\n> ???\nE ModuleNotFoundError: No module named 'non_existent_module_xyz'\n\n:973: ModuleNotFoundError"}, "teardown": {"duration": 0.00015373306814581156, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_add[1-2]", "lineno": 2, "outcome": "passed", "keywords": ["test_add[1-2]", "parametrize", "pytestmark", "1-2", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00029879703652113676, "outcome": "passed"}, "call": {"duration": 0.00014498899690806866, "outcome": "passed"}, "teardown": {"duration": 0.00014059594832360744, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_add[3-4]", "lineno": 2, "outcome": "passed", "keywords": ["test_add[3-4]", "parametrize", "pytestmark", "3-4", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00022083206567913294, "outcome": "passed"}, "call": {"duration": 0.00013171799946576357, "outcome": "passed"}, "teardown": {"duration": 0.0001262199366465211, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_uppercase_normal", "lineno": 7, "outcome": "passed", "keywords": ["test_uppercase_normal", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001083860406652093, "outcome": "passed"}, "call": {"duration": 0.00014301203191280365, "outcome": "passed"}, "teardown": {"duration": 9.591691195964813e-05, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_uppercase_type_error", "lineno": 11, "outcome": "failed", "keywords": ["test_uppercase_type_error", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00010730198118835688, "outcome": "passed"}, "call": {"duration": 0.00014561298303306103, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/functions/string_utils.py", "lineno": 3, "message": "TypeError: Input cannot be None"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 14, "message": ""}, {"path": "functions/string_utils.py", "lineno": 3, "message": "TypeError"}], "longrepr": "def test_uppercase_type_error():\n # TypeError when input is None (invalid input)\n> uppercase(None)\n\ntests/test_string_utils.py:14: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\ns = None\n\n def uppercase(s):\n if s is None:\n> raise TypeError(\"Input cannot be None\")\nE TypeError: Input cannot be None\n\nfunctions/string_utils.py:3: TypeError"}, "teardown": {"duration": 0.00014019408263266087, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_reverse_string", "lineno": 15, "outcome": "passed", "keywords": ["test_reverse_string", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011643790639936924, "outcome": "passed"}, "call": {"duration": 0.00014409096911549568, "outcome": "passed"}, "teardown": {"duration": 9.977002628147602e-05, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_warning_emit", "lineno": 19, "outcome": "passed", "keywords": ["test_warning_emit", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00010337494313716888, "outcome": "passed"}, "call": {"duration": 0.0001527759013697505, "outcome": "passed"}, "teardown": {"duration": 9.589409455657005e-05, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_error", "lineno": 23, "outcome": "failed", "keywords": ["test_unicode_decode_error", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00010236504022032022, "outcome": "passed"}, "call": {"duration": 0.0001433260040357709, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 26, "message": "UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 26, "message": "UnicodeDecodeError"}], "longrepr": "def test_unicode_decode_error():\n # UnicodeDecodeError when decoding invalid byte sequence\n> b'\\xff'.decode('utf-8')\nE UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte\n\ntests/test_string_utils.py:26: UnicodeDecodeError"}, "teardown": {"duration": 0.0001335239503532648, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_surrogateescape", "lineno": 27, "outcome": "failed", "keywords": ["test_unicode_decode_surrogateescape", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011540506966412067, "outcome": "passed"}, "call": {"duration": 0.00015034398529678583, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 30, "message": "UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 30, "message": "UnicodeDecodeError"}], "longrepr": "def test_unicode_decode_surrogateescape():\n # UnicodeDecodeError with strict error handler on invalid byte\n> b\"\\x80\".decode(\"utf-8\", errors=\"strict\")\nE UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte\n\ntests/test_string_utils.py:30: UnicodeDecodeError"}, "teardown": {"duration": 0.00013162405230104923, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_import_warning", "lineno": 31, "outcome": "passed", "keywords": ["test_import_warning", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011919799726456404, "outcome": "passed"}, "call": {"duration": 0.00013791793026030064, "outcome": "passed"}, "teardown": {"duration": 0.00010078400373458862, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_xfail_uppercase_digits", "lineno": 35, "outcome": "xfailed", "keywords": ["test_xfail_uppercase_digits", "xfail", "pytestmark", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001156550133600831, "outcome": "passed"}, "call": {"duration": 0.0006164630176499486, "outcome": "skipped", "crash": {"path": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 39, "message": "AssertionError: assert 'ABC123' == 'ABC1234'\n \n - ABC1234\n ? -\n + ABC123"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 39, "message": "AssertionError"}], "longrepr": "@pytest.mark.xfail(reason=\"Expected failure: uppercase does not handle digits\")\n def test_xfail_uppercase_digits():\n # Expected fail test because uppercase won't change digits\n> assert uppercase(\"abc123\") == \"ABC1234\"\nE AssertionError: assert 'ABC123' == 'ABC1234'\nE \nE - ABC1234\nE ? -\nE + ABC123\n\ntests/test_string_utils.py:39: AssertionError"}, "teardown": {"duration": 0.00014216196723282337, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_keyboard_interrupt_direct", "lineno": 40, "outcome": "passed", "keywords": ["test_keyboard_interrupt_direct", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001147179864346981, "outcome": "passed"}}], "warnings": [{"message": "Test warning", "category": "UserWarning", "when": "runtest", "filename": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 22}]} \ No newline at end of file +{"created": 1752691532.0411685, "duration": 0.7707462310791016, "exitcode": 2, "root": "/workspace/tligui_y/slic", "environment": {}, "summary": {"passed": 18, "failed": 31, "xfailed": 2, "total": 51, "collected": 51}, "collectors": [{"nodeid": "", "outcome": "passed", "result": [{"nodeid": ".", "type": "Dir"}]}, {"nodeid": "ci-reports/allure/data", "outcome": "passed", "result": []}, {"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/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/markdown", "type": "Dir"}]}, {"nodeid": "functions", "outcome": "passed", "result": []}, {"nodeid": "tests/test_broken_fct.py", "outcome": "failed", "result": [], "longrepr": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/python.py:493: in importtestmodule\n mod = import_path(\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/pathlib.py:587: in import_path\n importlib.import_module(module_name)\n.pixi/envs/default/lib/python3.8/importlib/__init__.py:127: in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\n:1014: in _gcd_import\n ???\n:991: in _find_and_load\n ???\n:975: in _find_and_load_unlocked\n ???\n:671: in _load_unlocked\n ???\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/assertion/rewrite.py:175: in exec_module\n source_stat, co = _rewrite_test(fn, self.config)\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/assertion/rewrite.py:355: in _rewrite_test\n tree = ast.parse(source, filename=strfn)\n.pixi/envs/default/lib/python3.8/ast.py:47: in parse\n return compile(source, filename, mode, flags,\nE File \"/workspace/tligui_y/slic/tests/test_broken_fct.py\", line 8\nE def test_valid_2():\nE ^\nE SyntaxError: invalid syntax"}, {"nodeid": "tests/test_collector_error.py", "outcome": "failed", "result": [], "longrepr": "ImportError while importing test module '/workspace/tligui_y/slic/tests/test_collector_error.py'.\nHint: make sure your test modules/packages have valid Python names.\nTraceback:\n.pixi/envs/default/lib/python3.8/importlib/__init__.py:127: in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\ntests/test_collector_error.py:1: in \n from no_existing_module.math_utils import *\nE ModuleNotFoundError: No module named 'no_existing_module'"}, {"nodeid": "tests/test_io_utils.py", "outcome": "passed", "result": [{"nodeid": "tests/test_io_utils.py::test_read_file", "type": "Function", "lineno": 9}, {"nodeid": "tests/test_io_utils.py::test_write_file", "type": "Function", "lineno": 16}, {"nodeid": "tests/test_io_utils.py::test_cause_io_error", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_io_utils.py::test_file_not_found", "type": "Function", "lineno": 26}, {"nodeid": "tests/test_io_utils.py::test_permission_error", "type": "Function", "lineno": 30}, {"nodeid": "tests/test_io_utils.py::test_mock_open_error", "type": "Function", "lineno": 37}, {"nodeid": "tests/test_io_utils.py::test_file_handle_closed_error", "type": "Function", "lineno": 45}, {"nodeid": "tests/test_io_utils.py::test_os_error", "type": "Function", "lineno": 51}, {"nodeid": "tests/test_io_utils.py::test_write_file_readonly", "type": "Function", "lineno": 58}, {"nodeid": "tests/test_io_utils.py::test_file_not_found_error", "type": "Function", "lineno": 66}]}, {"nodeid": "tests/test_math_utils.py", "outcome": "passed", "result": [{"nodeid": "tests/test_math_utils.py::test_broken", "type": "Function", "lineno": 13}, {"nodeid": "tests/test_math_utils.py::test_call_missing_function", "type": "Function", "lineno": 17}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[2-2-4]", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[1-5-6]", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[3-4-7]", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[3-5-8]", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[3-6-9]", "type": "Function", "lineno": 22}, {"nodeid": "tests/test_math_utils.py::test_addition_pass_id[a=2,b=2,expected=4]", "type": "Function", "lineno": 36}, {"nodeid": "tests/test_math_utils.py::test_addition_pass_id[a=1,b=5,expected=6]", "type": "Function", "lineno": 36}, {"nodeid": "tests/test_math_utils.py::test_addition_pass_id[a=3,b=4,expected=7]", "type": "Function", "lineno": 36}, {"nodeid": "tests/test_math_utils.py::test_addition_fail", "type": "Function", "lineno": 48}, {"nodeid": "tests/test_math_utils.py::test_division_zero", "type": "Function", "lineno": 52}, {"nodeid": "tests/test_math_utils.py::test_multiply_xfail", "type": "Function", "lineno": 56}, {"nodeid": "tests/test_math_utils.py::test_runtime_error", "type": "Function", "lineno": 61}, {"nodeid": "tests/test_math_utils.py::test_memory_error", "type": "Function", "lineno": 65}, {"nodeid": "tests/test_math_utils.py::test_timeout_error", "type": "Function", "lineno": 69}, {"nodeid": "tests/test_math_utils.py::test_recursion_error", "type": "Function", "lineno": 73}, {"nodeid": "tests/test_math_utils.py::test_floating_point_error", "type": "Function", "lineno": 79}, {"nodeid": "tests/test_math_utils.py::test_floating_point_overflow", "type": "Function", "lineno": 83}, {"nodeid": "tests/test_math_utils.py::test_value_error", "type": "Function", "lineno": 87}, {"nodeid": "tests/test_math_utils.py::test_wrong_argument_error", "type": "Function", "lineno": 91}, {"nodeid": "tests/test_math_utils.py::test_unhandled_exception", "type": "Function", "lineno": 95}, {"nodeid": "tests/test_math_utils.py::test_custom_error", "type": "Function", "lineno": 99}, {"nodeid": "tests/test_math_utils.py::test_stop_iteration_direct", "type": "Function", "lineno": 103}, {"nodeid": "tests/test_math_utils.py::test_generator_exit_direct", "type": "Function", "lineno": 107}, {"nodeid": "tests/test_math_utils.py::test_malformed_code", "type": "Function", "lineno": 111}, {"nodeid": "tests/test_math_utils.py::test_sys_exit", "type": "Function", "lineno": 115}, {"nodeid": "tests/test_math_utils.py::test_broken_function", "type": "Function", "lineno": 119}, {"nodeid": "tests/test_math_utils.py::test_import_error", "type": "Function", "lineno": 125}, {"nodeid": "tests/test_math_utils.py::test_module_not_found_error", "type": "Function", "lineno": 128}]}, {"nodeid": "tests/test_param.py", "outcome": "passed", "result": [{"nodeid": "tests/test_param.py::test_add[1-2]", "type": "Function", "lineno": 2}, {"nodeid": "tests/test_param.py::test_add[3-4]", "type": "Function", "lineno": 2}]}, {"nodeid": "tests/test_string_utils.py", "outcome": "passed", "result": [{"nodeid": "tests/test_string_utils.py::test_uppercase_normal", "type": "Function", "lineno": 7}, {"nodeid": "tests/test_string_utils.py::test_uppercase_type_error", "type": "Function", "lineno": 11}, {"nodeid": "tests/test_string_utils.py::test_reverse_string", "type": "Function", "lineno": 15}, {"nodeid": "tests/test_string_utils.py::test_warning_emit", "type": "Function", "lineno": 19}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_error", "type": "Function", "lineno": 23}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_surrogateescape", "type": "Function", "lineno": 27}, {"nodeid": "tests/test_string_utils.py::test_import_warning", "type": "Function", "lineno": 31}, {"nodeid": "tests/test_string_utils.py::test_xfail_uppercase_digits", "type": "Function", "lineno": 35}, {"nodeid": "tests/test_string_utils.py::test_keyboard_interrupt_direct", "type": "Function", "lineno": 40}]}, {"nodeid": "tests", "outcome": "passed", "result": [{"nodeid": "tests/test_broken_fct.py", "type": "Module"}, {"nodeid": "tests/test_collector_error.py", "type": "Module"}, {"nodeid": "tests/test_io_utils.py", "type": "Module"}, {"nodeid": "tests/test_math_utils.py", "type": "Module"}, {"nodeid": "tests/test_param.py", "type": "Module"}, {"nodeid": "tests/test_string_utils.py", "type": "Module"}]}, {"nodeid": ".", "outcome": "passed", "result": [{"nodeid": "ci-reports", "type": "Dir"}, {"nodeid": "functions", "type": "Package"}, {"nodeid": "tests", "type": "Dir"}]}], "tests": [{"nodeid": "tests/test_io_utils.py::test_read_file", "lineno": 9, "outcome": "passed", "keywords": ["test_read_file", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0032929020235314965, "outcome": "passed"}, "call": {"duration": 0.00042323104571551085, "outcome": "passed"}, "teardown": {"duration": 0.00025170098524540663, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_write_file", "lineno": 16, "outcome": "passed", "keywords": ["test_write_file", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00044403201900422573, "outcome": "passed"}, "call": {"duration": 0.0002863870467990637, "outcome": "passed"}, "teardown": {"duration": 0.00013737205881625414, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_cause_io_error", "lineno": 22, "outcome": "failed", "keywords": ["test_cause_io_error", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011354300659149885, "outcome": "passed"}, "call": {"duration": 0.00015954894479364157, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/functions/io_utils.py", "lineno": 10, "message": "OSError: Forced IO Error for testing"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 25, "message": ""}, {"path": "functions/io_utils.py", "lineno": 10, "message": "OSError"}], "longrepr": "def test_cause_io_error():\n # Raises manual IOError to simulate IO failure\n> cause_io_error()\n\ntests/test_io_utils.py:25: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\n def cause_io_error():\n> raise IOError(\"Forced IO Error for testing\")\nE OSError: Forced IO Error for testing\n\nfunctions/io_utils.py:10: OSError"}, "teardown": {"duration": 0.00013891898561269045, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_file_not_found", "lineno": 26, "outcome": "failed", "keywords": ["test_file_not_found", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.000118304044008255, "outcome": "passed"}, "call": {"duration": 0.00017448398284614086, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/functions/io_utils.py", "lineno": 2, "message": "FileNotFoundError: [Errno 2] No such file or directory: 'nonexistent.file'"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 29, "message": ""}, {"path": "functions/io_utils.py", "lineno": 2, "message": "FileNotFoundError"}], "longrepr": "def test_file_not_found():\n # Reading non-existing file raises FileNotFoundError\n> read_file(\"nonexistent.file\")\n\ntests/test_io_utils.py:29: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\npath = 'nonexistent.file'\n\n def read_file(path):\n> with open(path, \"r\", encoding=\"utf-8\") as f:\nE FileNotFoundError: [Errno 2] No such file or directory: 'nonexistent.file'\n\nfunctions/io_utils.py:2: FileNotFoundError"}, "teardown": {"duration": 0.00013521395158022642, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_permission_error", "lineno": 30, "outcome": "failed", "keywords": ["test_permission_error", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00019927206449210644, "outcome": "passed"}, "call": {"duration": 0.0001715869875624776, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_io_utils.py", "lineno": 34, "message": "PermissionError: Permission denied"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 36, "message": ""}, {"path": "functions/io_utils.py", "lineno": 2, "message": "in read_file"}, {"path": "tests/test_io_utils.py", "lineno": 34, "message": "PermissionError"}], "longrepr": "monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fac5af5f400>\n\n def test_permission_error(monkeypatch):\n # Patch open to raise PermissionError simulating access denial\n def raise_perm_error(*args, **kwargs):\n raise PermissionError(\"Permission denied\")\n monkeypatch.setattr(\"builtins.open\", raise_perm_error)\n> read_file(\"anyfile.txt\")\n\ntests/test_io_utils.py:36: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \nfunctions/io_utils.py:2: in read_file\n with open(path, \"r\", encoding=\"utf-8\") as f:\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nargs = ('anyfile.txt', 'r'), kwargs = {'encoding': 'utf-8'}\n\n def raise_perm_error(*args, **kwargs):\n> raise PermissionError(\"Permission denied\")\nE PermissionError: Permission denied\n\ntests/test_io_utils.py:34: PermissionError"}, "teardown": {"duration": 0.000161978998221457, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_mock_open_error", "lineno": 37, "outcome": "failed", "keywords": ["test_mock_open_error", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00018527405336499214, "outcome": "passed"}, "call": {"duration": 0.003261367091909051, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/unittest/mock.py", "lineno": 1140, "message": "OSError: Mocked IOError"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 43, "message": ""}, {"path": ".pixi/envs/default/lib/python3.8/unittest/mock.py", "lineno": 1081, "message": "in __call__"}, {"path": ".pixi/envs/default/lib/python3.8/unittest/mock.py", "lineno": 1085, "message": "in _mock_call"}, {"path": ".pixi/envs/default/lib/python3.8/unittest/mock.py", "lineno": 1140, "message": "OSError"}], "longrepr": "monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fac5af77220>\n\n def test_mock_open_error(monkeypatch):\n # Mock open() to raise IOError simulating read error\n mocked_open = mock.mock_open()\n mocked_open.side_effect = IOError(\"Mocked IOError\")\n monkeypatch.setattr(\"builtins.open\", mocked_open)\n> with open(\"file.txt\", \"r\") as f:\n\ntests/test_io_utils.py:43: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n.pixi/envs/default/lib/python3.8/unittest/mock.py:1081: in __call__\n return self._mock_call(*args, **kwargs)\n.pixi/envs/default/lib/python3.8/unittest/mock.py:1085: in _mock_call\n return self._execute_mock_call(*args, **kwargs)\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = \nargs = ('file.txt', 'r'), kwargs = {}, effect = OSError('Mocked IOError')\n\n def _execute_mock_call(self, /, *args, **kwargs):\n # separate from _increment_mock_call so that awaited functions are\n # executed separately from their call, also AsyncMock overrides this method\n \n effect = self.side_effect\n if effect is not None:\n if _is_exception(effect):\n> raise effect\nE OSError: Mocked IOError\n\n.pixi/envs/default/lib/python3.8/unittest/mock.py:1140: OSError"}, "teardown": {"duration": 0.0003157480387017131, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_file_handle_closed_error", "lineno": 45, "outcome": "failed", "keywords": ["test_file_handle_closed_error", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00016435794532299042, "outcome": "passed"}, "call": {"duration": 0.00019060296472162008, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_io_utils.py", "lineno": 50, "message": "ValueError: I/O operation on closed file"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 50, "message": "ValueError"}], "longrepr": "def test_file_handle_closed_error():\n # Accessing closed file raises ValueError\n f = io.StringIO(\"content\")\n f.close()\n> f.read()\nE ValueError: I/O operation on closed file\n\ntests/test_io_utils.py:50: ValueError"}, "teardown": {"duration": 0.00019040692131966352, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_os_error", "lineno": 51, "outcome": "failed", "keywords": ["test_os_error", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0002525340532884002, "outcome": "passed"}, "call": {"duration": 0.0001832999987527728, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_io_utils.py", "lineno": 55, "message": "OSError: Simulated OSError"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 57, "message": ""}, {"path": "tests/test_io_utils.py", "lineno": 55, "message": "OSError"}], "longrepr": "monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fac5af94cd0>\n\n def test_os_error(monkeypatch):\n # Patch os.remove to raise OSError simulating filesystem error\n def raise_os_error(path):\n raise OSError(\"Simulated OSError\")\n monkeypatch.setattr(\"os.remove\", raise_os_error)\n> os.remove(\"file.txt\")\n\ntests/test_io_utils.py:57: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\npath = 'file.txt'\n\n def raise_os_error(path):\n> raise OSError(\"Simulated OSError\")\nE OSError: Simulated OSError\n\ntests/test_io_utils.py:55: OSError"}, "teardown": {"duration": 0.0001675420207902789, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_write_file_readonly", "lineno": 58, "outcome": "passed", "keywords": ["test_write_file_readonly", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0006281330715864897, "outcome": "passed"}, "call": {"duration": 0.0009011360816657543, "outcome": "passed"}, "teardown": {"duration": 0.00015056005213409662, "outcome": "passed"}}, {"nodeid": "tests/test_io_utils.py::test_file_not_found_error", "lineno": 66, "outcome": "failed", "keywords": ["test_file_not_found_error", "test_io_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011526502203196287, "outcome": "passed"}, "call": {"duration": 0.00016551604494452477, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_io_utils.py", "lineno": 69, "message": "FileNotFoundError: [Errno 2] No such file or directory: 'no_such_file.txt'"}, "traceback": [{"path": "tests/test_io_utils.py", "lineno": 69, "message": "FileNotFoundError"}], "longrepr": "def test_file_not_found_error():\n # Raises FileNotFoundError when opening a non-existent file\n> open(\"no_such_file.txt\", \"r\")\nE FileNotFoundError: [Errno 2] No such file or directory: 'no_such_file.txt'\n\ntests/test_io_utils.py:69: FileNotFoundError"}, "teardown": {"duration": 0.00013684399891644716, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_broken", "lineno": 13, "outcome": "failed", "keywords": ["test_broken", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012934405822306871, "outcome": "passed"}, "call": {"duration": 0.0001682559959590435, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 16, "message": "NameError: name 'want_the_test_to_fail' is not defined"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 16, "message": "NameError"}], "longrepr": "def test_broken():\n # simulating a broken or faulty test implementation that will cause the test to error\n> want_the_test_to_fail\nE NameError: name 'want_the_test_to_fail' is not defined\n\ntests/test_math_utils.py:16: NameError"}, "teardown": {"duration": 0.00013551698066294193, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_call_missing_function", "lineno": 17, "outcome": "failed", "keywords": ["test_call_missing_function", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001236159587278962, "outcome": "passed"}, "call": {"duration": 0.00015533296391367912, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 20, "message": "AttributeError: module 'functions.math_utils' has no attribute 'non_existent_function'"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 20, "message": "AttributeError"}], "longrepr": "def test_call_missing_function():\n # Accessing a missing function attribute raises AttributeError\n> getattr(math_utils, \"non_existent_function\")()\nE AttributeError: module 'functions.math_utils' has no attribute 'non_existent_function'\n\ntests/test_math_utils.py:20: AttributeError"}, "teardown": {"duration": 0.00013395596761256456, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[2-2-4]", "lineno": 22, "outcome": "passed", "keywords": ["test_addition_pass[2-2-4]", "parametrize", "pytestmark", "2-2-4", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0003120799083262682, "outcome": "passed"}, "call": {"duration": 0.00015068694483488798, "outcome": "passed"}, "teardown": {"duration": 0.00013785099145025015, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[1-5-6]", "lineno": 22, "outcome": "passed", "keywords": ["test_addition_pass[1-5-6]", "parametrize", "pytestmark", "1-5-6", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0002587540075182915, "outcome": "passed"}, "call": {"duration": 0.00013468798715621233, "outcome": "passed"}, "teardown": {"duration": 0.00013181904796510935, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[3-4-7]", "lineno": 22, "outcome": "passed", "keywords": ["test_addition_pass[3-4-7]", "parametrize", "pytestmark", "3-4-7", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0002466639271005988, "outcome": "passed"}, "call": {"duration": 0.00013707298785448074, "outcome": "passed"}, "teardown": {"duration": 0.00013453199062496424, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[3-5-8]", "lineno": 22, "outcome": "passed", "keywords": ["test_addition_pass[3-5-8]", "parametrize", "pytestmark", "3-5-8", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0002681369660422206, "outcome": "passed"}, "call": {"duration": 0.00012873101513832808, "outcome": "passed"}, "teardown": {"duration": 0.00013778801076114178, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass[3-6-9]", "lineno": 22, "outcome": "passed", "keywords": ["test_addition_pass[3-6-9]", "parametrize", "pytestmark", "3-6-9", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00025412009563297033, "outcome": "passed"}, "call": {"duration": 0.0001278450945392251, "outcome": "passed"}, "teardown": {"duration": 0.0001282509183511138, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass_id[a=2,b=2,expected=4]", "lineno": 36, "outcome": "passed", "keywords": ["test_addition_pass_id[a=2,b=2,expected=4]", "parametrize", "pytestmark", "a=2,b=2,expected=4", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00024406297598034143, "outcome": "passed"}, "call": {"duration": 0.0001251619542017579, "outcome": "passed"}, "teardown": {"duration": 0.00013384304475039244, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass_id[a=1,b=5,expected=6]", "lineno": 36, "outcome": "passed", "keywords": ["test_addition_pass_id[a=1,b=5,expected=6]", "parametrize", "pytestmark", "a=1,b=5,expected=6", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.000251163961365819, "outcome": "passed"}, "call": {"duration": 0.0001265830360352993, "outcome": "passed"}, "teardown": {"duration": 0.00012941902969032526, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_pass_id[a=3,b=4,expected=7]", "lineno": 36, "outcome": "passed", "keywords": ["test_addition_pass_id[a=3,b=4,expected=7]", "parametrize", "pytestmark", "a=3,b=4,expected=7", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00024956499692052603, "outcome": "passed"}, "call": {"duration": 0.0001293469686061144, "outcome": "passed"}, "teardown": {"duration": 0.00013048702385276556, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_addition_fail", "lineno": 48, "outcome": "failed", "keywords": ["test_addition_fail", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001014400040730834, "outcome": "passed"}, "call": {"duration": 0.00045633595436811447, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 51, "message": "assert 4 == 5\n + where 4 = addition(2, 2)"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 51, "message": "AssertionError"}], "longrepr": "def test_addition_fail():\n # Assertion failure: expected incorrect result\n> assert addition(2, 2) == 5\nE assert 4 == 5\nE + where 4 = addition(2, 2)\n\ntests/test_math_utils.py:51: AssertionError"}, "teardown": {"duration": 0.00013647007290273905, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_division_zero", "lineno": 52, "outcome": "failed", "keywords": ["test_division_zero", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001167230075225234, "outcome": "passed"}, "call": {"duration": 0.00015886698383837938, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/functions/math_utils.py", "lineno": 5, "message": "ZeroDivisionError: division by zero"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 55, "message": ""}, {"path": "functions/math_utils.py", "lineno": 5, "message": "ZeroDivisionError"}], "longrepr": "def test_division_zero():\n # Will raise ZeroDivisionError if not handled in division\n> division(1, 0)\n\ntests/test_math_utils.py:55: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\na = 1, b = 0\n\n def division(a, b):\n> return a / b\nE ZeroDivisionError: division by zero\n\nfunctions/math_utils.py:5: ZeroDivisionError"}, "teardown": {"duration": 0.00013587402645498514, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_multiply_xfail", "lineno": 56, "outcome": "xfailed", "keywords": ["test_multiply_xfail", "xfail", "pytestmark", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00013320602010935545, "outcome": "passed"}, "call": {"duration": 0.0002824590774253011, "outcome": "skipped", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 60, "message": "assert 4 == 5\n + where 4 = multiply(2, 2)"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 60, "message": "AssertionError"}], "longrepr": "@pytest.mark.xfail(reason=\"Expected failure\")\n def test_multiply_xfail():\n # Expected fail test (xfail): incorrect expected multiply result\n> assert multiply(2, 2) == 5\nE assert 4 == 5\nE + where 4 = multiply(2, 2)\n\ntests/test_math_utils.py:60: AssertionError"}, "teardown": {"duration": 0.00013584911357611418, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_runtime_error", "lineno": 61, "outcome": "failed", "keywords": ["test_runtime_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001172930933535099, "outcome": "passed"}, "call": {"duration": 0.00014794792514294386, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 64, "message": "RuntimeError: Forced runtime error"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 64, "message": "RuntimeError"}], "longrepr": "def test_runtime_error():\n # Test raises an uncaught RuntimeError\n> raise RuntimeError(\"Forced runtime error\")\nE RuntimeError: Forced runtime error\n\ntests/test_math_utils.py:64: RuntimeError"}, "teardown": {"duration": 0.00013355608098208904, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_memory_error", "lineno": 65, "outcome": "failed", "keywords": ["test_memory_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012036191765218973, "outcome": "passed"}, "call": {"duration": 0.0001472249859943986, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 68, "message": "MemoryError: Simulated memory error"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 68, "message": "MemoryError"}], "longrepr": "def test_memory_error():\n # Manually raise MemoryError to simulate out-of-memory condition\n> raise MemoryError(\"Simulated memory error\")\nE MemoryError: Simulated memory error\n\ntests/test_math_utils.py:68: MemoryError"}, "teardown": {"duration": 0.0001355229178443551, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_timeout_error", "lineno": 69, "outcome": "failed", "keywords": ["test_timeout_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012833601795136929, "outcome": "passed"}, "call": {"duration": 0.0001487709814682603, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 72, "message": "TimeoutError: Simulated timeout error"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 72, "message": "TimeoutError"}], "longrepr": "def test_timeout_error():\n # Manually raise TimeoutError simulating timeout conditions\n> raise TimeoutError(\"Simulated timeout error\")\nE TimeoutError: Simulated timeout error\n\ntests/test_math_utils.py:72: TimeoutError"}, "teardown": {"duration": 0.0001443210057914257, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_recursion_error", "lineno": 73, "outcome": "failed", "keywords": ["test_recursion_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011506897863000631, "outcome": "passed"}, "call": {"duration": 0.000796740991063416, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 77, "message": "RecursionError: maximum recursion depth exceeded"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 78, "message": ""}, {"path": "tests/test_math_utils.py", "lineno": 77, "message": "in recursive"}, {"path": "tests/test_math_utils.py", "lineno": 77, "message": "in recursive"}], "longrepr": "def test_recursion_error():\n # Infinite recursion triggers RecursionError\n def recursive():\n return recursive()\n> recursive()\n\ntests/test_math_utils.py:78: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \ntests/test_math_utils.py:77: in recursive\n return recursive()\ntests/test_math_utils.py:77: in recursive\n return recursive()\nE RecursionError: maximum recursion depth exceeded\n!!! Recursion detected (same locals & position)"}, "teardown": {"duration": 0.00015934999100863934, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_floating_point_error", "lineno": 79, "outcome": "failed", "keywords": ["test_floating_point_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011973304208368063, "outcome": "passed"}, "call": {"duration": 0.0001488890266045928, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 82, "message": "FloatingPointError: Simulated floating point error"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 82, "message": "FloatingPointError"}], "longrepr": "def test_floating_point_error():\n # Manually raise FloatingPointError\n> raise FloatingPointError(\"Simulated floating point error\")\nE FloatingPointError: Simulated floating point error\n\ntests/test_math_utils.py:82: FloatingPointError"}, "teardown": {"duration": 0.00013660895638167858, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_floating_point_overflow", "lineno": 83, "outcome": "failed", "keywords": ["test_floating_point_overflow", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001231050118803978, "outcome": "passed"}, "call": {"duration": 0.00018442899454385042, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 86, "message": "OverflowError: math range error"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 86, "message": "OverflowError"}], "longrepr": "def test_floating_point_overflow():\n # Exponential overflow triggers OverflowError\n> math.exp(1000)\nE OverflowError: math range error\n\ntests/test_math_utils.py:86: OverflowError"}, "teardown": {"duration": 0.0001341389724984765, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_value_error", "lineno": 87, "outcome": "failed", "keywords": ["test_value_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011857703793793917, "outcome": "passed"}, "call": {"duration": 0.00016147491987794638, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 90, "message": "ValueError: invalid literal for int() with base 10: 'invalid'"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 90, "message": "ValueError"}], "longrepr": "def test_value_error():\n # ValueError on invalid integer conversion\n> int(\"invalid\")\nE ValueError: invalid literal for int() with base 10: 'invalid'\n\ntests/test_math_utils.py:90: ValueError"}, "teardown": {"duration": 0.0001325380289927125, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_wrong_argument_error", "lineno": 91, "outcome": "failed", "keywords": ["test_wrong_argument_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011501496192067862, "outcome": "passed"}, "call": {"duration": 0.00014797598123550415, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 94, "message": "TypeError: 'int' object is not iterable"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 94, "message": "TypeError"}], "longrepr": "def test_wrong_argument_error():\n # TypeError when passing wrong argument type to sum\n> sum(5)\nE TypeError: 'int' object is not iterable\n\ntests/test_math_utils.py:94: TypeError"}, "teardown": {"duration": 0.0001359879970550537, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_unhandled_exception", "lineno": 95, "outcome": "failed", "keywords": ["test_unhandled_exception", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00013235199730843306, "outcome": "passed"}, "call": {"duration": 0.0001546080457046628, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 98, "message": "Exception: Generic unhandled exception"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 98, "message": "Exception"}], "longrepr": "def test_unhandled_exception():\n # Raises generic unhandled Exception\n> raise Exception(\"Generic unhandled exception\")\nE Exception: Generic unhandled exception\n\ntests/test_math_utils.py:98: Exception"}, "teardown": {"duration": 0.00014670309610664845, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_custom_error", "lineno": 99, "outcome": "failed", "keywords": ["test_custom_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011632998939603567, "outcome": "passed"}, "call": {"duration": 0.00015097495634108782, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 102, "message": "test_math_utils.CustomError: Custom error simulation"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 102, "message": "CustomError"}], "longrepr": "def test_custom_error():\n # Raises user-defined CustomError exception\n> raise CustomError(\"Custom error simulation\")\nE test_math_utils.CustomError: Custom error simulation\n\ntests/test_math_utils.py:102: CustomError"}, "teardown": {"duration": 0.0001405490329489112, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_stop_iteration_direct", "lineno": 103, "outcome": "failed", "keywords": ["test_stop_iteration_direct", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012906896881759167, "outcome": "passed"}, "call": {"duration": 0.00016494200099259615, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/_pytest/capture.py", "lineno": 880, "message": "RuntimeError: generator raised StopIteration"}, "traceback": [{"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/runner.py", "lineno": 341, "message": ""}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/runner.py", "lineno": 242, "message": "in "}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/pluggy/_hooks.py", "lineno": 513, "message": "in __call__"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/pluggy/_manager.py", "lineno": 120, "message": "in _hookexec"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/threadexception.py", "lineno": 92, "message": "in pytest_runtest_call"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/threadexception.py", "lineno": 68, "message": "in thread_exception_runtest_hook"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/unraisableexception.py", "lineno": 95, "message": "in pytest_runtest_call"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/unraisableexception.py", "lineno": 70, "message": "in unraisable_exception_runtest_hook"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/logging.py", "lineno": 846, "message": "in pytest_runtest_call"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/logging.py", "lineno": 829, "message": "in _runtest_for"}, {"path": ".pixi/envs/default/lib/python3.8/site-packages/_pytest/capture.py", "lineno": 880, "message": "RuntimeError"}], "longrepr": "def test_stop_iteration_direct():\n # Directly raise StopIteration exception\n> raise StopIteration()\nE StopIteration\n\ntests/test_math_utils.py:106: StopIteration\n\nThe above exception was the direct cause of the following exception:\n\ncls = \nfunc = . at 0x7fac5afbb9d0>\nwhen = 'call'\nreraise = (, )\n\n @classmethod\n def from_call(\n cls,\n func: Callable[[], TResult],\n when: Literal[\"collect\", \"setup\", \"call\", \"teardown\"],\n reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None,\n ) -> CallInfo[TResult]:\n \"\"\"Call func, wrapping the result in a CallInfo.\n \n :param func:\n The function to call. Called without arguments.\n :type func: Callable[[], _pytest.runner.TResult]\n :param when:\n The phase in which the function is called.\n :param reraise:\n Exception or exceptions that shall propagate if raised by the\n function, instead of being wrapped in the CallInfo.\n \"\"\"\n excinfo = None\n start = timing.time()\n precise_start = timing.perf_counter()\n try:\n> result: TResult | None = func()\n\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/runner.py:341: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n.pixi/envs/default/lib/python3.8/site-packages/_pytest/runner.py:242: in \n lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise\n.pixi/envs/default/lib/python3.8/site-packages/pluggy/_hooks.py:513: in __call__\n return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)\n.pixi/envs/default/lib/python3.8/site-packages/pluggy/_manager.py:120: in _hookexec\n return self._inner_hookexec(hook_name, methods, kwargs, firstresult)\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/threadexception.py:92: in pytest_runtest_call\n yield from thread_exception_runtest_hook()\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/threadexception.py:68: in thread_exception_runtest_hook\n yield\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/unraisableexception.py:95: in pytest_runtest_call\n yield from unraisable_exception_runtest_hook()\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/unraisableexception.py:70: in unraisable_exception_runtest_hook\n yield\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/logging.py:846: in pytest_runtest_call\n yield from self._runtest_for(item, \"call\")\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/logging.py:829: in _runtest_for\n yield\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = _capture_fixture=None>\nitem = \n\n @hookimpl(wrapper=True)\n def pytest_runtest_call(self, item: Item) -> Generator[None]:\n with self.item_capture(\"call\", item):\n> return (yield)\nE RuntimeError: generator raised StopIteration\n\n.pixi/envs/default/lib/python3.8/site-packages/_pytest/capture.py:880: RuntimeError"}, "teardown": {"duration": 0.0002637020079419017, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_generator_exit_direct", "lineno": 107, "outcome": "failed", "keywords": ["test_generator_exit_direct", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00015517498832195997, "outcome": "passed"}, "call": {"duration": 0.0001781380269676447, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 110, "message": "GeneratorExit"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 110, "message": "GeneratorExit"}], "longrepr": "def test_generator_exit_direct():\n # Directly raise GeneratorExit exception\n> raise GeneratorExit()\nE GeneratorExit\n\ntests/test_math_utils.py:110: GeneratorExit"}, "teardown": {"duration": 0.00018268602434545755, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_malformed_code", "lineno": 111, "outcome": "failed", "keywords": ["test_malformed_code", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00013178098015487194, "outcome": "passed"}, "call": {"duration": 0.00018824602011591196, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 114, "message": " File \"\", line 1\n def bad(:\n ^\nSyntaxError: invalid syntax"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 114, "message": "SyntaxError"}], "longrepr": "def test_malformed_code():\n # SyntaxError when executing malformed Python code\n> exec(\"def bad(:\\n pass\")\nE File \"\", line 1\nE def bad(:\nE ^\nE SyntaxError: invalid syntax\n\ntests/test_math_utils.py:114: SyntaxError"}, "teardown": {"duration": 0.00014296395238488913, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_sys_exit", "lineno": 115, "outcome": "failed", "keywords": ["test_sys_exit", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012288999278098345, "outcome": "passed"}, "call": {"duration": 0.00016941793728619814, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 118, "message": "SystemExit: 1"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 118, "message": "SystemExit"}], "longrepr": "def test_sys_exit():\n # Simulate SystemExit via sys.exit\n> sys.exit(1)\nE SystemExit: 1\n\ntests/test_math_utils.py:118: SystemExit"}, "teardown": {"duration": 0.00013380905147641897, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_broken_function", "lineno": 119, "outcome": "failed", "keywords": ["test_broken_function", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001232329523190856, "outcome": "passed"}, "call": {"duration": 0.00015732890460640192, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 123, "message": "TypeError: Broken function"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 124, "message": ""}, {"path": "tests/test_math_utils.py", "lineno": 123, "message": "TypeError"}], "longrepr": "def test_broken_function():\n # Simulate broken function raising TypeError\n def broken_func(*args, **kwargs):\n raise TypeError(\"Broken function\")\n> broken_func()\n\ntests/test_math_utils.py:124: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nargs = (), kwargs = {}\n\n def broken_func(*args, **kwargs):\n> raise TypeError(\"Broken function\")\nE TypeError: Broken function\n\ntests/test_math_utils.py:123: TypeError"}, "teardown": {"duration": 0.00013779709115624428, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_import_error", "lineno": 125, "outcome": "failed", "keywords": ["test_import_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011760694906115532, "outcome": "passed"}, "call": {"duration": 0.0001614170614629984, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_math_utils.py", "lineno": 127, "message": "ImportError: Simulated ImportError"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 127, "message": "ImportError"}], "longrepr": "def test_import_error():\n> raise ImportError(\"Simulated ImportError\")\nE ImportError: Simulated ImportError\n\ntests/test_math_utils.py:127: ImportError"}, "teardown": {"duration": 0.00014843896497040987, "outcome": "passed"}}, {"nodeid": "tests/test_math_utils.py::test_module_not_found_error", "lineno": 128, "outcome": "failed", "keywords": ["test_module_not_found_error", "test_math_utils.py", "tests", "slic", ""], "setup": {"duration": 0.000123838079161942, "outcome": "passed"}, "call": {"duration": 0.0005040490068495274, "outcome": "failed", "crash": {"path": "", "lineno": 973, "message": "ModuleNotFoundError: No module named 'non_existent_module_xyz'"}, "traceback": [{"path": "tests/test_math_utils.py", "lineno": 131, "message": ""}, {"path": ".pixi/envs/default/lib/python3.8/importlib/__init__.py", "lineno": 127, "message": "in import_module"}, {"path": "", "lineno": 1014, "message": "in _gcd_import"}, {"path": "", "lineno": 991, "message": "in _find_and_load"}, {"path": "", "lineno": 973, "message": "ModuleNotFoundError"}], "longrepr": "def test_module_not_found_error():\n # Raises ModuleNotFoundError (subclass of ImportError) for missing module\n> importlib.import_module(\"non_existent_module_xyz\")\n\ntests/test_math_utils.py:131: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n.pixi/envs/default/lib/python3.8/importlib/__init__.py:127: in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\n:1014: in _gcd_import\n ???\n:991: in _find_and_load\n ???\n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nname = 'non_existent_module_xyz'\nimport_ = \n\n> ???\nE ModuleNotFoundError: No module named 'non_existent_module_xyz'\n\n:973: ModuleNotFoundError"}, "teardown": {"duration": 0.0002048340393230319, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_add[1-2]", "lineno": 2, "outcome": "passed", "keywords": ["test_add[1-2]", "parametrize", "pytestmark", "1-2", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0003470570081844926, "outcome": "passed"}, "call": {"duration": 0.00018179207108914852, "outcome": "passed"}, "teardown": {"duration": 0.00016426295042037964, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_add[3-4]", "lineno": 2, "outcome": "passed", "keywords": ["test_add[3-4]", "parametrize", "pytestmark", "3-4", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0002275860169902444, "outcome": "passed"}, "call": {"duration": 0.0001428480027243495, "outcome": "passed"}, "teardown": {"duration": 0.0001554370392113924, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_uppercase_normal", "lineno": 7, "outcome": "passed", "keywords": ["test_uppercase_normal", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011409400030970573, "outcome": "passed"}, "call": {"duration": 0.0001573330955579877, "outcome": "passed"}, "teardown": {"duration": 0.00012732995674014091, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_uppercase_type_error", "lineno": 11, "outcome": "failed", "keywords": ["test_uppercase_type_error", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00013062707148492336, "outcome": "passed"}, "call": {"duration": 0.00018049299251288176, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/functions/string_utils.py", "lineno": 3, "message": "TypeError: Input cannot be None"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 14, "message": ""}, {"path": "functions/string_utils.py", "lineno": 3, "message": "TypeError"}], "longrepr": "def test_uppercase_type_error():\n # TypeError when input is None (invalid input)\n> uppercase(None)\n\ntests/test_string_utils.py:14: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\ns = None\n\n def uppercase(s):\n if s is None:\n> raise TypeError(\"Input cannot be None\")\nE TypeError: Input cannot be None\n\nfunctions/string_utils.py:3: TypeError"}, "teardown": {"duration": 0.00016367295756936073, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_reverse_string", "lineno": 15, "outcome": "passed", "keywords": ["test_reverse_string", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00013171008322387934, "outcome": "passed"}, "call": {"duration": 0.00015937897842377424, "outcome": "passed"}, "teardown": {"duration": 0.00010533002205193043, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_warning_emit", "lineno": 19, "outcome": "passed", "keywords": ["test_warning_emit", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00010884297080338001, "outcome": "passed"}, "call": {"duration": 0.0001463419757783413, "outcome": "passed"}, "teardown": {"duration": 0.00010895007289946079, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_error", "lineno": 23, "outcome": "failed", "keywords": ["test_unicode_decode_error", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00010945799294859171, "outcome": "passed"}, "call": {"duration": 0.0001505690161138773, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 26, "message": "UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 26, "message": "UnicodeDecodeError"}], "longrepr": "def test_unicode_decode_error():\n # UnicodeDecodeError when decoding invalid byte sequence\n> b'\\xff'.decode('utf-8')\nE UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte\n\ntests/test_string_utils.py:26: UnicodeDecodeError"}, "teardown": {"duration": 0.00015063898172229528, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_surrogateescape", "lineno": 27, "outcome": "failed", "keywords": ["test_unicode_decode_surrogateescape", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012140406761318445, "outcome": "passed"}, "call": {"duration": 0.0001555399503558874, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 30, "message": "UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 30, "message": "UnicodeDecodeError"}], "longrepr": "def test_unicode_decode_surrogateescape():\n # UnicodeDecodeError with strict error handler on invalid byte\n> b\"\\x80\".decode(\"utf-8\", errors=\"strict\")\nE UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte\n\ntests/test_string_utils.py:30: UnicodeDecodeError"}, "teardown": {"duration": 0.00013213895726948977, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_import_warning", "lineno": 31, "outcome": "passed", "keywords": ["test_import_warning", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.000117360963486135, "outcome": "passed"}, "call": {"duration": 0.00014026195276528597, "outcome": "passed"}, "teardown": {"duration": 0.00010643398854881525, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_xfail_uppercase_digits", "lineno": 35, "outcome": "xfailed", "keywords": ["test_xfail_uppercase_digits", "xfail", "pytestmark", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001289290376007557, "outcome": "passed"}, "call": {"duration": 0.0006400829879567027, "outcome": "skipped", "crash": {"path": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 39, "message": "AssertionError: assert 'ABC123' == 'ABC1234'\n \n - ABC1234\n ? -\n + ABC123"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 39, "message": "AssertionError"}], "longrepr": "@pytest.mark.xfail(reason=\"Expected failure: uppercase does not handle digits\")\n def test_xfail_uppercase_digits():\n # Expected fail test because uppercase won't change digits\n> assert uppercase(\"abc123\") == \"ABC1234\"\nE AssertionError: assert 'ABC123' == 'ABC1234'\nE \nE - ABC1234\nE ? -\nE + ABC123\n\ntests/test_string_utils.py:39: AssertionError"}, "teardown": {"duration": 0.00014669797383248806, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_keyboard_interrupt_direct", "lineno": 40, "outcome": "passed", "keywords": ["test_keyboard_interrupt_direct", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012203503865748644, "outcome": "passed"}}], "warnings": [{"message": "Test warning", "category": "UserWarning", "when": "runtest", "filename": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 22}]} \ No newline at end of file