From 2a70c1eff9ad14bf033c92cf622cbda074f7b125 Mon Sep 17 00:00:00 2001 From: ci-bot Date: Wed, 16 Jul 2025 13:23:13 +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 2ea95199..04b9b873 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.74s ========= +======== 31 failed, 17 passed, 2 xfailed, 1 warning, 2 errors in 0.72s ========= ``` @@ -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: allure-pytest-2.13.5, cov-5.0.0, metadata-3.1.1, html-4.1.1, json-report-1.5.0, md-report-0.6.2 +plugins: html-4.1.1, cov-5.0.0, metadata-3.1.1, allure-pytest-2.13.5, md-report-0.6.2, json-report-1.5.0 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 0x7f716c5884f0> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fed30a17550> 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 0x7f71685fe940> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fed30503520> 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 0x7f71689c65b0> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fed30503910> 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 0x7f71687619d0> +func = . at 0x7fed2ddd7550> 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.74s ========= +======== 31 failed, 17 passed, 2 xfailed, 1 warning, 2 errors in 0.72s ========= ``` --- # ๐Ÿงช Test Report -*Generated on 2025-07-16 13:04:53* +*Generated on 2025-07-16 13:23:13* ## ๐Ÿงพ General Info -- **duration**: 0.7445480823516846 +- **duration**: 0.726116418838501 - **root**: /workspace/tligui_y/slic - **environment**: @@ -637,7 +637,7 @@ ERROR tests/test_collector_error.py ๐Ÿ“Œ Duration ``` -0.0033330180449411273 +0.003338363952934742 ``` @@ -660,7 +660,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0004882910288870335 +0.0004424729850143194 ``` @@ -683,7 +683,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002423690166324377 +0.00025820103473961353 ``` @@ -722,7 +722,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0005102509167045355 +0.0004634619690477848 ``` @@ -745,7 +745,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002965859603136778 +0.00028459797613322735 ``` @@ -768,7 +768,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001399029279127717 +0.00013886007945984602 ``` @@ -807,7 +807,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0006409899797290564 +0.0007248119218274951 ``` @@ -830,7 +830,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0011870450107380748 +0.0009866940090432763 ``` @@ -853,7 +853,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015047600027173758 +0.00014605792239308357 ``` @@ -901,7 +901,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002950819907709956 +0.00029759493190795183 ``` @@ -924,7 +924,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001469609560444951 +0.00014563894364982843 ``` @@ -947,7 +947,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013948907144367695 +0.00015225994866341352 ``` @@ -979,7 +979,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00024561001919209957 +0.0002485349541530013 ``` @@ -1002,7 +1002,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001306890044361353 +0.00012965500354766846 ``` @@ -1025,7 +1025,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013475888408720493 +0.0001343300100415945 ``` @@ -1057,7 +1057,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00024858699180185795 +0.0002598519204184413 ``` @@ -1080,7 +1080,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001320349983870983 +0.0001351749524474144 ``` @@ -1103,7 +1103,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013172999024391174 +0.00013598904479295015 ``` @@ -1135,7 +1135,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00024696195032447577 +0.00023622706066817045 ``` @@ -1158,7 +1158,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012613495346158743 +0.00012447498738765717 ``` @@ -1181,7 +1181,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013131694868206978 +0.00013178703375160694 ``` @@ -1213,7 +1213,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00024285202380269766 +0.00024446588940918446 ``` @@ -1236,7 +1236,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001288499915972352 +0.0001327230129390955 ``` @@ -1259,7 +1259,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013048306573182344 +0.00013560603838413954 ``` @@ -1299,7 +1299,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00023366196546703577 +0.0002389419823884964 ``` @@ -1322,7 +1322,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012575602158904076 +0.00012563797645270824 ``` @@ -1345,7 +1345,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001345889177173376 +0.00013274210505187511 ``` @@ -1377,7 +1377,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002457320224493742 +0.00024628499522805214 ``` @@ -1400,7 +1400,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012760795652866364 +0.0001287480117753148 ``` @@ -1423,7 +1423,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012893194798380136 +0.00013431301340460777 ``` @@ -1455,7 +1455,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00023612799122929573 +0.0002334939781576395 ``` @@ -1478,7 +1478,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014238408766686916 +0.00012416508980095387 ``` @@ -1501,7 +1501,7 @@ passed ๐Ÿ“Œ Duration ``` -0.000132643966935575 +0.00014092703349888325 ``` @@ -1549,7 +1549,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00031146302353590727 +0.0002940099220722914 ``` @@ -1572,7 +1572,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015453004743903875 +0.00013785995543003082 ``` @@ -1595,7 +1595,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013552699238061905 +0.00016424490604549646 ``` @@ -1627,7 +1627,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002194920089095831 +0.00023992301430553198 ``` @@ -1650,7 +1650,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013882596977055073 +0.00013197597581893206 ``` @@ -1673,7 +1673,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012586102820932865 +0.00014778005424886942 ``` @@ -1720,7 +1720,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011064403224736452 +0.00011568190529942513 ``` @@ -1743,7 +1743,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001418211031705141 +0.00016644701827317476 ``` @@ -1766,7 +1766,7 @@ passed ๐Ÿ“Œ Duration ``` -9.623810183256865e-05 +0.00011781498324126005 ``` @@ -1805,7 +1805,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013291602954268456 +0.00012235401663929224 ``` @@ -1828,7 +1828,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014376395847648382 +0.00014089897740632296 ``` @@ -1851,7 +1851,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001002768985927105 +0.00010193698108196259 ``` @@ -1890,7 +1890,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00010538008064031601 +0.00010583200491964817 ``` @@ -1913,7 +1913,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014305708464235067 +0.00015300698578357697 ``` @@ -1936,7 +1936,7 @@ passed ๐Ÿ“Œ Duration ``` -9.631901048123837e-05 +9.723694529384375e-05 ``` @@ -1975,7 +1975,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011450797319412231 +0.0001173410564661026 ``` @@ -1998,7 +1998,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013673200737684965 +0.00013935903552919626 ``` @@ -2021,7 +2021,7 @@ passed ๐Ÿ“Œ Duration ``` -9.972602128982544e-05 +0.00010433094576001167 ``` @@ -2060,7 +2060,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011441705282777548 +0.0001222830032929778 ``` @@ -2115,7 +2115,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011072296183556318 +0.00012731109745800495 ``` @@ -2138,7 +2138,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015444401651620865 +0.0001589180901646614 ``` @@ -2209,7 +2209,7 @@ functions/io_utils.py:10: OSError ๐Ÿ“Œ Duration ``` -0.0001363130286335945 +0.00014494906645268202 ``` @@ -2248,7 +2248,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011716200970113277 +0.00012073095422238111 ``` @@ -2271,7 +2271,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00019898300524801016 +0.00019928591791540384 ``` @@ -2344,7 +2344,7 @@ functions/io_utils.py:2: FileNotFoundError ๐Ÿ“Œ Duration ``` -0.00013825902715325356 +0.0001357359578832984 ``` @@ -2383,7 +2383,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002026669681072235 +0.0001978209475055337 ``` @@ -2406,7 +2406,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00017422798555344343 +0.0001893880544230342 ``` @@ -2456,7 +2456,7 @@ message: PermissionError ๐Ÿ“Œ Longrepr ``` -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7f716c5884f0> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fed30a17550> 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.0001931630540639162 +0.00016538798809051514 ``` @@ -2529,7 +2529,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00019336200784891844 +0.00019135605543851852 ``` @@ -2552,7 +2552,7 @@ passed ๐Ÿ“Œ Duration ``` -0.003415804007090628 +0.003284284961409867 ``` @@ -2605,7 +2605,7 @@ message: OSError ๐Ÿ“Œ Longrepr ``` -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7f71685fe940> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fed30503520> 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.00033816194627434015 +0.00032130000181496143 ``` @@ -2687,7 +2687,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001453090226277709 +0.00014818296767771244 ``` @@ -2710,7 +2710,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002020570682361722 +0.00019507505930960178 ``` @@ -2774,7 +2774,7 @@ tests/test_io_utils.py:50: ValueError ๐Ÿ“Œ Duration ``` -0.00017758493777364492 +0.000196842011064291 ``` @@ -2813,7 +2813,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0002493379870429635 +0.00024674797896295786 ``` @@ -2836,7 +2836,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00019137200433760881 +0.0001878610346466303 ``` @@ -2883,7 +2883,7 @@ message: OSError ๐Ÿ“Œ Longrepr ``` -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7f71689c65b0> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fed30503910> 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.00016600696835666895 +0.00018127798102796078 ``` @@ -2953,7 +2953,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001165410503745079 +0.00012829306069761515 ``` @@ -2976,7 +2976,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00016650499310344458 +0.00016843900084495544 ``` @@ -3038,7 +3038,7 @@ tests/test_io_utils.py:69: FileNotFoundError ๐Ÿ“Œ Duration ``` -0.00013516400940716267 +0.00014418293721973896 ``` @@ -3085,7 +3085,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012482493184506893 +0.00013586797285825014 ``` @@ -3108,7 +3108,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001520740333944559 +0.00015618803445249796 ``` @@ -3170,7 +3170,7 @@ tests/test_math_utils.py:16: NameError ๐Ÿ“Œ Duration ``` -0.00013505690731108189 +0.00013685994781553745 ``` @@ -3209,7 +3209,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011608004570007324 +0.0001232579816132784 ``` @@ -3232,7 +3232,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001513820607215166 +0.0001508559798821807 ``` @@ -3294,7 +3294,7 @@ tests/test_math_utils.py:20: AttributeError ๐Ÿ“Œ Duration ``` -0.00013683701399713755 +0.0001365960342809558 ``` @@ -3333,7 +3333,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001014369772747159 +0.00011401600204408169 ``` @@ -3356,7 +3356,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0004926160909235477 +0.0004512839950621128 ``` @@ -3420,7 +3420,7 @@ tests/test_math_utils.py:51: AssertionError ๐Ÿ“Œ Duration ``` -0.00013557099737226963 +0.00013675703667104244 ``` @@ -3459,7 +3459,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011443300172686577 +0.00011664105113595724 ``` @@ -3482,7 +3482,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015659001655876637 +0.0001529989531263709 ``` @@ -3555,7 +3555,7 @@ functions/math_utils.py:5: ZeroDivisionError ๐Ÿ“Œ Duration ``` -0.00013614411000162363 +0.00013755890540778637 ``` @@ -3594,7 +3594,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011433300096541643 +0.0001208700705319643 ``` @@ -3617,7 +3617,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014545605517923832 +0.00015038507990539074 ``` @@ -3679,7 +3679,7 @@ tests/test_math_utils.py:64: RuntimeError ๐Ÿ“Œ Duration ``` -0.0001329279039055109 +0.0001368990633636713 ``` @@ -3718,7 +3718,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012118800077587366 +0.00012226507533341646 ``` @@ -3741,7 +3741,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015256600454449654 +0.00015167496167123318 ``` @@ -3803,7 +3803,7 @@ tests/test_math_utils.py:68: MemoryError ๐Ÿ“Œ Duration ``` -0.00014381599612534046 +0.00013387692160904408 ``` @@ -3842,7 +3842,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011943792924284935 +0.00011720496695488691 ``` @@ -3865,7 +3865,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014748901594430208 +0.00014875794295221567 ``` @@ -3927,7 +3927,7 @@ tests/test_math_utils.py:72: TimeoutError ๐Ÿ“Œ Duration ``` -0.00013299193233251572 +0.00013658893294632435 ``` @@ -3966,7 +3966,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014373892918229103 +0.00012926198542118073 ``` @@ -3989,7 +3989,7 @@ passed ๐Ÿ“Œ Duration ``` -0.000832434045150876 +0.000778959016315639 ``` @@ -4065,7 +4065,7 @@ E RecursionError: maximum recursion depth exceeded ๐Ÿ“Œ Duration ``` -0.0001575989881530404 +0.00015059602446854115 ``` @@ -4104,7 +4104,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001357609871774912 +0.00012574705760926008 ``` @@ -4127,7 +4127,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015812297351658344 +0.00015678699128329754 ``` @@ -4189,7 +4189,7 @@ tests/test_math_utils.py:82: FloatingPointError ๐Ÿ“Œ Duration ``` -0.00015173095744103193 +0.00014116195961833 ``` @@ -4228,7 +4228,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011842302046716213 +0.00012268300633877516 ``` @@ -4251,7 +4251,7 @@ passed ๐Ÿ“Œ Duration ``` -0.000173665932379663 +0.00016504910308867693 ``` @@ -4313,7 +4313,7 @@ tests/test_math_utils.py:86: OverflowError ๐Ÿ“Œ Duration ``` -0.00013593793846666813 +0.00013676797971129417 ``` @@ -4352,7 +4352,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013145094271749258 +0.00012608198449015617 ``` @@ -4375,7 +4375,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015960203018039465 +0.00016462302301079035 ``` @@ -4437,7 +4437,7 @@ tests/test_math_utils.py:90: ValueError ๐Ÿ“Œ Duration ``` -0.00014454696793109179 +0.00013578799553215504 ``` @@ -4476,7 +4476,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011791998986154795 +0.00012132490519434214 ``` @@ -4499,7 +4499,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015024503227323294 +0.00015565997455269098 ``` @@ -4561,7 +4561,7 @@ tests/test_math_utils.py:94: TypeError ๐Ÿ“Œ Duration ``` -0.00013402593322098255 +0.0001368700759485364 ``` @@ -4600,7 +4600,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012004899326711893 +0.00012791005428880453 ``` @@ -4623,7 +4623,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001512609887868166 +0.0001501169754192233 ``` @@ -4685,7 +4685,7 @@ tests/test_math_utils.py:98: Exception ๐Ÿ“Œ Duration ``` -0.0001338099827989936 +0.00014420505613088608 ``` @@ -4724,7 +4724,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011890905443578959 +0.00011744594667106867 ``` @@ -4747,7 +4747,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014993094373494387 +0.00015534297563135624 ``` @@ -4809,7 +4809,7 @@ tests/test_math_utils.py:102: CustomError ๐Ÿ“Œ Duration ``` -0.00013603607658296824 +0.00013482500799000263 ``` @@ -4848,7 +4848,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012131896801292896 +0.0001161620020866394 ``` @@ -4871,7 +4871,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00016335502732545137 +0.00016003800556063652 ``` @@ -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 0x7f71687619d0> +func = . at 0x7fed2ddd7550> when = 'call' reraise = (, ) @@ -5027,7 +5027,7 @@ E RuntimeError: generator raised StopIteration ๐Ÿ“Œ Duration ``` -0.0002582649467512965 +0.0002540149725973606 ``` @@ -5066,7 +5066,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014231691602617502 +0.00015061197336763144 ``` @@ -5089,7 +5089,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00018797395750880241 +0.00017684395425021648 ``` @@ -5151,7 +5151,7 @@ tests/test_math_utils.py:110: GeneratorExit ๐Ÿ“Œ Duration ``` -0.00020912394393235445 +0.00016947102267295122 ``` @@ -5190,7 +5190,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001571619650349021 +0.00012720504309982061 ``` @@ -5213,7 +5213,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00019550009164959192 +0.00016854004934430122 ``` @@ -5281,7 +5281,7 @@ tests/test_math_utils.py:114: SyntaxError ๐Ÿ“Œ Duration ``` -0.00019551895093172789 +0.0001496950862929225 ``` @@ -5320,7 +5320,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00014116300735622644 +0.00012846197932958603 ``` @@ -5343,7 +5343,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00016963400412350893 +0.00015191803686320782 ``` @@ -5405,7 +5405,7 @@ tests/test_math_utils.py:118: SystemExit ๐Ÿ“Œ Duration ``` -0.00017328897956758738 +0.00014800403732806444 ``` @@ -5444,7 +5444,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00013213499914854765 +0.00012937095016241074 ``` @@ -5467,7 +5467,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015878304839134216 +0.00016290403436869383 ``` @@ -5542,7 +5542,7 @@ tests/test_math_utils.py:123: TypeError ๐Ÿ“Œ Duration ``` -0.00014553801156580448 +0.0001407889649271965 ``` @@ -5581,7 +5581,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00012081698514521122 +0.00011847401037812233 ``` @@ -5604,7 +5604,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00016895495355129242 +0.00016117095947265625 ``` @@ -5665,7 +5665,7 @@ tests/test_math_utils.py:127: ImportError ๐Ÿ“Œ Duration ``` -0.0001396889565512538 +0.00013633607886731625 ``` @@ -5704,7 +5704,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011749705299735069 +0.00012471294030547142 ``` @@ -5727,7 +5727,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0004746350459754467 +0.0004701809957623482 ``` @@ -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.00019630801398307085 +0.00014488399028778076 ``` @@ -5863,7 +5863,7 @@ passed ๐Ÿ“Œ Duration ``` -9.988900274038315e-05 +0.00011054391507059336 ``` @@ -5886,7 +5886,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00017345906235277653 +0.00014417094644159079 ``` @@ -5960,7 +5960,7 @@ functions/string_utils.py:3: TypeError ๐Ÿ“Œ Duration ``` -0.00014823698438704014 +0.00013706798199564219 ``` @@ -5999,7 +5999,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011049304157495499 +0.00010359694715589285 ``` @@ -6022,7 +6022,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015945802442729473 +0.00017120398115366697 ``` @@ -6084,7 +6084,7 @@ tests/test_string_utils.py:26: UnicodeDecodeError ๐Ÿ“Œ Duration ``` -0.0001415190054103732 +0.00014607899356633425 ``` @@ -6123,7 +6123,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011783104855567217 +0.0001156139187514782 ``` @@ -6146,7 +6146,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00015411200001835823 +0.00014860089868307114 ``` @@ -6208,7 +6208,7 @@ tests/test_string_utils.py:30: UnicodeDecodeError ๐Ÿ“Œ Duration ``` -0.00013624399434775114 +0.00013349298387765884 ``` @@ -6263,7 +6263,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0001331660896539688 +0.00013519404456019402 ``` @@ -6286,7 +6286,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00028360600117594004 +0.00026163598522543907 ``` @@ -6351,7 +6351,7 @@ tests/test_math_utils.py:60: AssertionError ๐Ÿ“Œ Duration ``` -0.00014946400187909603 +0.00013827101793140173 ``` @@ -6398,7 +6398,7 @@ passed ๐Ÿ“Œ Duration ``` -0.00011577794793993235 +0.0001303160097450018 ``` @@ -6421,7 +6421,7 @@ passed ๐Ÿ“Œ Duration ``` -0.0006276770727708936 +0.0006176879396662116 ``` @@ -6492,7 +6492,7 @@ tests/test_string_utils.py:39: AssertionError ๐Ÿ“Œ Duration ``` -0.0001358729787170887 +0.00013326900079846382 ``` diff --git a/ci-reports/markdown/json-tree-view.txt b/ci-reports/markdown/json-tree-view.txt index 297255d8..e87d02ed 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: 1752671093.149188 -โ”œโ”€โ”€ duration: 0.7445480823516846 +โ”œโ”€โ”€ created: 1752672193.3623047 +โ”œโ”€โ”€ duration: 0.726116418838501 โ”œโ”€โ”€ exitcode: 2 โ”œโ”€โ”€ root: /workspace/tligui_y/slic โ”œโ”€โ”€ environment @@ -428,13 +428,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0033330180449411273 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.003338363952934742 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0004882910288870335 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0004424729850143194 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002423690166324377 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00025820103473961353 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_write_file @@ -447,13 +447,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0005102509167045355 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0004634619690477848 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002965859603136778 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00028459797613322735 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001399029279127717 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013886007945984602 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_cause_io_error @@ -466,10 +466,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011072296183556318 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012731109745800495 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015444401651620865 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001589180901646614 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.0001363130286335945 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014494906645268202 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_file_not_found @@ -511,10 +511,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011716200970113277 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012073095422238111 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019898300524801016 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019928591791540384 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00013825902715325356 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001357359578832984 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_permission_error @@ -560,10 +560,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002026669681072235 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001978209475055337 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00017422798555344343 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001893880544230342 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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 0x7f716c5884f0> +โ”‚ โ”‚ โ”‚ at 0x7fed30a17550> โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ 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.0001931630540639162 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016538798809051514 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_mock_open_error @@ -622,10 +622,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019336200784891844 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019135605543851852 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.003415804007090628 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.003284284961409867 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: @@ -651,7 +651,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ lineno: 1140 โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ message: OSError โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ longrepr: monkeypatch = <_pytest.monkeypatch.MonkeyPatch object -โ”‚ โ”‚ โ”‚ at 0x7f71685fe940> +โ”‚ โ”‚ โ”‚ at 0x7fed30503520> โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ def test_mock_open_error(monkeypatch): โ”‚ โ”‚ โ”‚ # Mock open() to raise IOError simulating read error @@ -673,7 +673,7 @@ โ”‚ โ”‚ โ”‚ _ _ _ _ _ _ _ _ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ self = +โ”‚ โ”‚ โ”‚ id='140656694541040'> โ”‚ โ”‚ โ”‚ 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.00033816194627434015 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00032130000181496143 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_file_handle_closed_error @@ -704,10 +704,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001453090226277709 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014818296767771244 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002020570682361722 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019507505930960178 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00017758493777364492 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000196842011064291 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_os_error @@ -740,10 +740,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002493379870429635 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00024674797896295786 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019137200433760881 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001878610346466303 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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 0x7f71689c65b0> +โ”‚ โ”‚ โ”‚ at 0x7fed30503910> โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ 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.00016600696835666895 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00018127798102796078 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_write_file_readonly @@ -794,13 +794,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0006409899797290564 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0007248119218274951 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0011870450107380748 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0009866940090432763 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015047600027173758 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014605792239308357 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_io_utils.py::test_file_not_found_error @@ -813,10 +813,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001165410503745079 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012829306069761515 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016650499310344458 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016843900084495544 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00013516400940716267 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014418293721973896 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_broken @@ -850,10 +850,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012482493184506893 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013586797285825014 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001520740333944559 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015618803445249796 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00013505690731108189 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013685994781553745 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_call_missing_function @@ -886,10 +886,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011608004570007324 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001232579816132784 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001513820607215166 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001508559798821807 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00013683701399713755 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001365960342809558 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass[2-2-4] @@ -926,13 +926,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002950819907709956 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00029759493190795183 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001469609560444951 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014563894364982843 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013948907144367695 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015225994866341352 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass[1-5-6] @@ -948,13 +948,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00024561001919209957 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002485349541530013 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001306890044361353 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012965500354766846 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013475888408720493 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001343300100415945 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass[3-4-7] @@ -970,13 +970,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00024858699180185795 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002598519204184413 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001320349983870983 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001351749524474144 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013172999024391174 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013598904479295015 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass[3-5-8] @@ -992,13 +992,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00024696195032447577 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00023622706066817045 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012613495346158743 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012447498738765717 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013131694868206978 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013178703375160694 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass[3-6-9] @@ -1014,13 +1014,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00024285202380269766 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00024446588940918446 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001288499915972352 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001327230129390955 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013048306573182344 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013560603838413954 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass_id @@ -1036,13 +1036,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00023366196546703577 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002389419823884964 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012575602158904076 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012563797645270824 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001345889177173376 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013274210505187511 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass_id @@ -1058,13 +1058,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002457320224493742 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00024628499522805214 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012760795652866364 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001287480117753148 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012893194798380136 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013431301340460777 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_pass_id @@ -1080,13 +1080,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00023612799122929573 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002334939781576395 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014238408766686916 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012416508980095387 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000132643966935575 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014092703349888325 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_addition_fail @@ -1099,10 +1099,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001014369772747159 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011401600204408169 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0004926160909235477 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0004512839950621128 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00013557099737226963 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013675703667104244 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_division_zero @@ -1135,10 +1135,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011443300172686577 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011664105113595724 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015659001655876637 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001529989531263709 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00013614411000162363 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013755890540778637 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_multiply_xfail @@ -1185,10 +1185,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001331660896539688 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013519404456019402 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00028360600117594004 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00026163598522543907 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00014946400187909603 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013827101793140173 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_runtime_error @@ -1223,10 +1223,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011433300096541643 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001208700705319643 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014545605517923832 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015038507990539074 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.0001329279039055109 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001368990633636713 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_memory_error @@ -1257,10 +1257,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012118800077587366 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012226507533341646 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015256600454449654 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015167496167123318 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00014381599612534046 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013387692160904408 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_timeout_error @@ -1292,10 +1292,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011943792924284935 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011720496695488691 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014748901594430208 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014875794295221567 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00013299193233251572 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013658893294632435 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_recursion_error @@ -1327,10 +1327,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014373892918229103 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012926198542118073 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000832434045150876 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000778959016315639 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.0001575989881530404 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015059602446854115 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_floating_point_error @@ -1378,10 +1378,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001357609871774912 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012574705760926008 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015812297351658344 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015678699128329754 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00015173095744103193 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014116195961833 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_floating_point_overflow @@ -1413,10 +1413,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011842302046716213 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012268300633877516 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.000173665932379663 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016504910308867693 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00013593793846666813 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013676797971129417 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_value_error @@ -1447,10 +1447,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013145094271749258 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012608198449015617 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015960203018039465 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016462302301079035 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00014454696793109179 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013578799553215504 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_wrong_argument_error @@ -1483,10 +1483,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011791998986154795 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012132490519434214 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015024503227323294 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015565997455269098 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00013402593322098255 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001368700759485364 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_unhandled_exception @@ -1517,10 +1517,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012004899326711893 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012791005428880453 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001512609887868166 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001501169754192233 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.0001338099827989936 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014420505613088608 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_custom_error @@ -1551,10 +1551,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011890905443578959 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011744594667106867 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014993094373494387 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015534297563135624 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00013603607658296824 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013482500799000263 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_stop_iteration_direct @@ -1586,10 +1586,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012131896801292896 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001161620020866394 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016335502732545137 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016003800556063652 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ outcome: failed โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ crash โ”‚ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ path: @@ -1676,7 +1676,7 @@ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ โ”‚ cls = โ”‚ โ”‚ โ”‚ func = . at -โ”‚ โ”‚ โ”‚ 0x7f71687619d0> +โ”‚ โ”‚ โ”‚ 0x7fed2ddd7550> โ”‚ โ”‚ โ”‚ when = 'call' โ”‚ โ”‚ โ”‚ reraise = (, ) @@ -1759,7 +1759,7 @@ โ”‚ โ”‚ โ”‚ .pixi/envs/default/lib/python3.8/site-packages/_pytest/capture.p โ”‚ โ”‚ โ”‚ y:880: RuntimeError โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002582649467512965 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002540149725973606 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_generator_exit_direct @@ -1772,10 +1772,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014231691602617502 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015061197336763144 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00018797395750880241 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00017684395425021648 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00020912394393235445 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016947102267295122 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_malformed_code @@ -1806,10 +1806,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001571619650349021 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012720504309982061 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00019550009164959192 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016854004934430122 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00019551895093172789 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001496950862929225 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_sys_exit @@ -1846,10 +1846,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014116300735622644 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012846197932958603 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016963400412350893 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015191803686320782 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00017328897956758738 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014800403732806444 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_broken_function @@ -1880,10 +1880,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013213499914854765 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012937095016241074 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015878304839134216 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016290403436869383 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00014553801156580448 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001407889649271965 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_import_error @@ -1929,10 +1929,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012081698514521122 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011847401037812233 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016895495355129242 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016117095947265625 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.0001396889565512538 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013633607886731625 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_math_utils.py::test_module_not_found_error @@ -1962,10 +1962,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011749705299735069 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012471294030547142 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0004746350459754467 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0004701809957623482 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00019630801398307085 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014488399028778076 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_param.py::test_add[1-2] @@ -2037,13 +2037,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00031146302353590727 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002940099220722914 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015453004743903875 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013785995543003082 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013552699238061905 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016424490604549646 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_param.py::test_add[3-4] @@ -2059,13 +2059,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0002194920089095831 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00023992301430553198 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013882596977055073 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013197597581893206 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012586102820932865 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014778005424886942 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_uppercase_normal @@ -2078,13 +2078,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011064403224736452 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011568190529942513 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001418211031705141 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00016644701827317476 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 9.623810183256865e-05 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011781498324126005 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_uppercase_type_error @@ -2097,10 +2097,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 9.988900274038315e-05 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011054391507059336 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00017345906235277653 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014417094644159079 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00014823698438704014 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013706798199564219 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_reverse_string @@ -2145,13 +2145,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013291602954268456 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00012235401663929224 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014376395847648382 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014089897740632296 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001002768985927105 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010193698108196259 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_warning_emit @@ -2164,13 +2164,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010538008064031601 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010583200491964817 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014305708464235067 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015300698578357697 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 9.631901048123837e-05 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 9.723694529384375e-05 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_unicode_decode_error @@ -2183,10 +2183,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011049304157495499 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010359694715589285 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015945802442729473 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00017120398115366697 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.0001415190054103732 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014607899356633425 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: @@ -2220,10 +2220,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011783104855567217 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001156139187514782 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00015411200001835823 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00014860089868307114 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.00013624399434775114 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013349298387765884 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_import_warning @@ -2257,13 +2257,13 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011450797319412231 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001173410564661026 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013673200737684965 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013935903552919626 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ””โ”€โ”€ teardown -โ”‚ โ”‚ โ”œโ”€โ”€ duration: 9.972602128982544e-05 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00010433094576001167 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”œโ”€โ”€ - โ”‚ โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_xfail_uppercase_digits @@ -2278,10 +2278,10 @@ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ”‚ โ”œโ”€โ”€ setup -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00011577794793993235 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0001303160097450018 โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ”‚ โ”œโ”€โ”€ call -โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0006276770727708936 +โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.0006176879396662116 โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ 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.0001358729787170887 +โ”‚ โ”‚ โ”œโ”€โ”€ duration: 0.00013326900079846382 โ”‚ โ”‚ โ””โ”€โ”€ outcome: passed โ”‚ โ””โ”€โ”€ - โ”‚ โ”œโ”€โ”€ nodeid: tests/test_string_utils.py::test_keyboard_interrupt_direct @@ -2323,7 +2323,7 @@ โ”‚ โ”‚ โ”œโ”€โ”€ slic โ”‚ โ”‚ โ””โ”€โ”€ โ”‚ โ””โ”€โ”€ setup -โ”‚ โ”œโ”€โ”€ duration: 0.00011441705282777548 +โ”‚ โ”œโ”€โ”€ duration: 0.0001222830032929778 โ”‚ โ””โ”€โ”€ outcome: passed โ””โ”€โ”€ warnings โ””โ”€โ”€ - diff --git a/ci-reports/markdown/pytest-report.json b/ci-reports/markdown/pytest-report.json index a7df7955..1902abd8 100644 --- a/ci-reports/markdown/pytest-report.json +++ b/ci-reports/markdown/pytest-report.json @@ -1 +1 @@ -{"created": 1752671093.149188, "duration": 0.7445480823516846, "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.0033330180449411273, "outcome": "passed"}, "call": {"duration": 0.0004882910288870335, "outcome": "passed"}, "teardown": {"duration": 0.0002423690166324377, "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.0005102509167045355, "outcome": "passed"}, "call": {"duration": 0.0002965859603136778, "outcome": "passed"}, "teardown": {"duration": 0.0001399029279127717, "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.00011072296183556318, "outcome": "passed"}, "call": {"duration": 0.00015444401651620865, "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.0001363130286335945, "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.00011716200970113277, "outcome": "passed"}, "call": {"duration": 0.00019898300524801016, "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.00013825902715325356, "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.0002026669681072235, "outcome": "passed"}, "call": {"duration": 0.00017422798555344343, "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 0x7f716c5884f0>\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.0001931630540639162, "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.00019336200784891844, "outcome": "passed"}, "call": {"duration": 0.003415804007090628, "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 0x7f71685fe940>\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.00033816194627434015, "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.0001453090226277709, "outcome": "passed"}, "call": {"duration": 0.0002020570682361722, "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.00017758493777364492, "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.0002493379870429635, "outcome": "passed"}, "call": {"duration": 0.00019137200433760881, "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 0x7f71689c65b0>\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.00016600696835666895, "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.0006409899797290564, "outcome": "passed"}, "call": {"duration": 0.0011870450107380748, "outcome": "passed"}, "teardown": {"duration": 0.00015047600027173758, "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.0001165410503745079, "outcome": "passed"}, "call": {"duration": 0.00016650499310344458, "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.00013516400940716267, "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.00012482493184506893, "outcome": "passed"}, "call": {"duration": 0.0001520740333944559, "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.00013505690731108189, "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.00011608004570007324, "outcome": "passed"}, "call": {"duration": 0.0001513820607215166, "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.00013683701399713755, "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.0002950819907709956, "outcome": "passed"}, "call": {"duration": 0.0001469609560444951, "outcome": "passed"}, "teardown": {"duration": 0.00013948907144367695, "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.00024561001919209957, "outcome": "passed"}, "call": {"duration": 0.0001306890044361353, "outcome": "passed"}, "teardown": {"duration": 0.00013475888408720493, "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.00024858699180185795, "outcome": "passed"}, "call": {"duration": 0.0001320349983870983, "outcome": "passed"}, "teardown": {"duration": 0.00013172999024391174, "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.00024696195032447577, "outcome": "passed"}, "call": {"duration": 0.00012613495346158743, "outcome": "passed"}, "teardown": {"duration": 0.00013131694868206978, "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.00024285202380269766, "outcome": "passed"}, "call": {"duration": 0.0001288499915972352, "outcome": "passed"}, "teardown": {"duration": 0.00013048306573182344, "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.00023366196546703577, "outcome": "passed"}, "call": {"duration": 0.00012575602158904076, "outcome": "passed"}, "teardown": {"duration": 0.0001345889177173376, "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.0002457320224493742, "outcome": "passed"}, "call": {"duration": 0.00012760795652866364, "outcome": "passed"}, "teardown": {"duration": 0.00012893194798380136, "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.00023612799122929573, "outcome": "passed"}, "call": {"duration": 0.00014238408766686916, "outcome": "passed"}, "teardown": {"duration": 0.000132643966935575, "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.0001014369772747159, "outcome": "passed"}, "call": {"duration": 0.0004926160909235477, "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.00013557099737226963, "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.00011443300172686577, "outcome": "passed"}, "call": {"duration": 0.00015659001655876637, "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.00013614411000162363, "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.0001331660896539688, "outcome": "passed"}, "call": {"duration": 0.00028360600117594004, "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.00014946400187909603, "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.00011433300096541643, "outcome": "passed"}, "call": {"duration": 0.00014545605517923832, "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.0001329279039055109, "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.00012118800077587366, "outcome": "passed"}, "call": {"duration": 0.00015256600454449654, "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.00014381599612534046, "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.00011943792924284935, "outcome": "passed"}, "call": {"duration": 0.00014748901594430208, "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.00013299193233251572, "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.00014373892918229103, "outcome": "passed"}, "call": {"duration": 0.000832434045150876, "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.0001575989881530404, "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.0001357609871774912, "outcome": "passed"}, "call": {"duration": 0.00015812297351658344, "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.00015173095744103193, "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.00011842302046716213, "outcome": "passed"}, "call": {"duration": 0.000173665932379663, "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.00013593793846666813, "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.00013145094271749258, "outcome": "passed"}, "call": {"duration": 0.00015960203018039465, "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.00014454696793109179, "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.00011791998986154795, "outcome": "passed"}, "call": {"duration": 0.00015024503227323294, "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.00013402593322098255, "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.00012004899326711893, "outcome": "passed"}, "call": {"duration": 0.0001512609887868166, "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.0001338099827989936, "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.00011890905443578959, "outcome": "passed"}, "call": {"duration": 0.00014993094373494387, "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.00013603607658296824, "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.00012131896801292896, "outcome": "passed"}, "call": {"duration": 0.00016335502732545137, "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 0x7f71687619d0>\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.0002582649467512965, "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.00014231691602617502, "outcome": "passed"}, "call": {"duration": 0.00018797395750880241, "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.00020912394393235445, "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.0001571619650349021, "outcome": "passed"}, "call": {"duration": 0.00019550009164959192, "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.00019551895093172789, "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.00014116300735622644, "outcome": "passed"}, "call": {"duration": 0.00016963400412350893, "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.00017328897956758738, "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.00013213499914854765, "outcome": "passed"}, "call": {"duration": 0.00015878304839134216, "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.00014553801156580448, "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.00012081698514521122, "outcome": "passed"}, "call": {"duration": 0.00016895495355129242, "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.0001396889565512538, "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.00011749705299735069, "outcome": "passed"}, "call": {"duration": 0.0004746350459754467, "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.00019630801398307085, "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.00031146302353590727, "outcome": "passed"}, "call": {"duration": 0.00015453004743903875, "outcome": "passed"}, "teardown": {"duration": 0.00013552699238061905, "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.0002194920089095831, "outcome": "passed"}, "call": {"duration": 0.00013882596977055073, "outcome": "passed"}, "teardown": {"duration": 0.00012586102820932865, "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.00011064403224736452, "outcome": "passed"}, "call": {"duration": 0.0001418211031705141, "outcome": "passed"}, "teardown": {"duration": 9.623810183256865e-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": 9.988900274038315e-05, "outcome": "passed"}, "call": {"duration": 0.00017345906235277653, "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.00014823698438704014, "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.00013291602954268456, "outcome": "passed"}, "call": {"duration": 0.00014376395847648382, "outcome": "passed"}, "teardown": {"duration": 0.0001002768985927105, "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.00010538008064031601, "outcome": "passed"}, "call": {"duration": 0.00014305708464235067, "outcome": "passed"}, "teardown": {"duration": 9.631901048123837e-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.00011049304157495499, "outcome": "passed"}, "call": {"duration": 0.00015945802442729473, "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.0001415190054103732, "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.00011783104855567217, "outcome": "passed"}, "call": {"duration": 0.00015411200001835823, "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.00013624399434775114, "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.00011450797319412231, "outcome": "passed"}, "call": {"duration": 0.00013673200737684965, "outcome": "passed"}, "teardown": {"duration": 9.972602128982544e-05, "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.00011577794793993235, "outcome": "passed"}, "call": {"duration": 0.0006276770727708936, "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.0001358729787170887, "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.00011441705282777548, "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": 1752672193.3623047, "duration": 0.726116418838501, "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.003338363952934742, "outcome": "passed"}, "call": {"duration": 0.0004424729850143194, "outcome": "passed"}, "teardown": {"duration": 0.00025820103473961353, "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.0004634619690477848, "outcome": "passed"}, "call": {"duration": 0.00028459797613322735, "outcome": "passed"}, "teardown": {"duration": 0.00013886007945984602, "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.00012731109745800495, "outcome": "passed"}, "call": {"duration": 0.0001589180901646614, "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.00014494906645268202, "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.00012073095422238111, "outcome": "passed"}, "call": {"duration": 0.00019928591791540384, "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.0001357359578832984, "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.0001978209475055337, "outcome": "passed"}, "call": {"duration": 0.0001893880544230342, "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 0x7fed30a17550>\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.00016538798809051514, "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.00019135605543851852, "outcome": "passed"}, "call": {"duration": 0.003284284961409867, "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 0x7fed30503520>\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.00032130000181496143, "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.00014818296767771244, "outcome": "passed"}, "call": {"duration": 0.00019507505930960178, "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.000196842011064291, "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.00024674797896295786, "outcome": "passed"}, "call": {"duration": 0.0001878610346466303, "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 0x7fed30503910>\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.00018127798102796078, "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.0007248119218274951, "outcome": "passed"}, "call": {"duration": 0.0009866940090432763, "outcome": "passed"}, "teardown": {"duration": 0.00014605792239308357, "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.00012829306069761515, "outcome": "passed"}, "call": {"duration": 0.00016843900084495544, "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.00014418293721973896, "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.00013586797285825014, "outcome": "passed"}, "call": {"duration": 0.00015618803445249796, "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.00013685994781553745, "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.0001232579816132784, "outcome": "passed"}, "call": {"duration": 0.0001508559798821807, "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.0001365960342809558, "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.00029759493190795183, "outcome": "passed"}, "call": {"duration": 0.00014563894364982843, "outcome": "passed"}, "teardown": {"duration": 0.00015225994866341352, "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.0002485349541530013, "outcome": "passed"}, "call": {"duration": 0.00012965500354766846, "outcome": "passed"}, "teardown": {"duration": 0.0001343300100415945, "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.0002598519204184413, "outcome": "passed"}, "call": {"duration": 0.0001351749524474144, "outcome": "passed"}, "teardown": {"duration": 0.00013598904479295015, "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.00023622706066817045, "outcome": "passed"}, "call": {"duration": 0.00012447498738765717, "outcome": "passed"}, "teardown": {"duration": 0.00013178703375160694, "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.00024446588940918446, "outcome": "passed"}, "call": {"duration": 0.0001327230129390955, "outcome": "passed"}, "teardown": {"duration": 0.00013560603838413954, "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.0002389419823884964, "outcome": "passed"}, "call": {"duration": 0.00012563797645270824, "outcome": "passed"}, "teardown": {"duration": 0.00013274210505187511, "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.00024628499522805214, "outcome": "passed"}, "call": {"duration": 0.0001287480117753148, "outcome": "passed"}, "teardown": {"duration": 0.00013431301340460777, "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.0002334939781576395, "outcome": "passed"}, "call": {"duration": 0.00012416508980095387, "outcome": "passed"}, "teardown": {"duration": 0.00014092703349888325, "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.00011401600204408169, "outcome": "passed"}, "call": {"duration": 0.0004512839950621128, "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.00013675703667104244, "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.00011664105113595724, "outcome": "passed"}, "call": {"duration": 0.0001529989531263709, "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.00013755890540778637, "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.00013519404456019402, "outcome": "passed"}, "call": {"duration": 0.00026163598522543907, "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.00013827101793140173, "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.0001208700705319643, "outcome": "passed"}, "call": {"duration": 0.00015038507990539074, "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.0001368990633636713, "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.00012226507533341646, "outcome": "passed"}, "call": {"duration": 0.00015167496167123318, "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.00013387692160904408, "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.00011720496695488691, "outcome": "passed"}, "call": {"duration": 0.00014875794295221567, "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.00013658893294632435, "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.00012926198542118073, "outcome": "passed"}, "call": {"duration": 0.000778959016315639, "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.00015059602446854115, "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.00012574705760926008, "outcome": "passed"}, "call": {"duration": 0.00015678699128329754, "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.00014116195961833, "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.00012268300633877516, "outcome": "passed"}, "call": {"duration": 0.00016504910308867693, "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.00013676797971129417, "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.00012608198449015617, "outcome": "passed"}, "call": {"duration": 0.00016462302301079035, "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.00013578799553215504, "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.00012132490519434214, "outcome": "passed"}, "call": {"duration": 0.00015565997455269098, "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.0001368700759485364, "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.00012791005428880453, "outcome": "passed"}, "call": {"duration": 0.0001501169754192233, "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.00014420505613088608, "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.00011744594667106867, "outcome": "passed"}, "call": {"duration": 0.00015534297563135624, "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.00013482500799000263, "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.0001161620020866394, "outcome": "passed"}, "call": {"duration": 0.00016003800556063652, "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 0x7fed2ddd7550>\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.0002540149725973606, "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.00015061197336763144, "outcome": "passed"}, "call": {"duration": 0.00017684395425021648, "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.00016947102267295122, "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.00012720504309982061, "outcome": "passed"}, "call": {"duration": 0.00016854004934430122, "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.0001496950862929225, "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.00012846197932958603, "outcome": "passed"}, "call": {"duration": 0.00015191803686320782, "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.00014800403732806444, "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.00012937095016241074, "outcome": "passed"}, "call": {"duration": 0.00016290403436869383, "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.0001407889649271965, "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.00011847401037812233, "outcome": "passed"}, "call": {"duration": 0.00016117095947265625, "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.00013633607886731625, "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.00012471294030547142, "outcome": "passed"}, "call": {"duration": 0.0004701809957623482, "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.00014488399028778076, "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.0002940099220722914, "outcome": "passed"}, "call": {"duration": 0.00013785995543003082, "outcome": "passed"}, "teardown": {"duration": 0.00016424490604549646, "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.00023992301430553198, "outcome": "passed"}, "call": {"duration": 0.00013197597581893206, "outcome": "passed"}, "teardown": {"duration": 0.00014778005424886942, "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.00011568190529942513, "outcome": "passed"}, "call": {"duration": 0.00016644701827317476, "outcome": "passed"}, "teardown": {"duration": 0.00011781498324126005, "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.00011054391507059336, "outcome": "passed"}, "call": {"duration": 0.00014417094644159079, "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.00013706798199564219, "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.00012235401663929224, "outcome": "passed"}, "call": {"duration": 0.00014089897740632296, "outcome": "passed"}, "teardown": {"duration": 0.00010193698108196259, "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.00010583200491964817, "outcome": "passed"}, "call": {"duration": 0.00015300698578357697, "outcome": "passed"}, "teardown": {"duration": 9.723694529384375e-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.00010359694715589285, "outcome": "passed"}, "call": {"duration": 0.00017120398115366697, "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.00014607899356633425, "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.0001156139187514782, "outcome": "passed"}, "call": {"duration": 0.00014860089868307114, "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.00013349298387765884, "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.0001173410564661026, "outcome": "passed"}, "call": {"duration": 0.00013935903552919626, "outcome": "passed"}, "teardown": {"duration": 0.00010433094576001167, "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.0001303160097450018, "outcome": "passed"}, "call": {"duration": 0.0006176879396662116, "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.00013326900079846382, "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.0001222830032929778, "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