From f52b4aeef020d20b08249f9084c058d52242a0da Mon Sep 17 00:00:00 2001 From: ci-bot Date: Thu, 17 Jul 2025 22:29:36 +0000 Subject: [PATCH] CI: update test report and coverage files --- ci-reports/markdown/TEST-REPORT.md | 7578 +++++++++-------------- ci-reports/markdown/json-tree-view.txt | 440 +- ci-reports/markdown/pytest-report.json | 2 +- ci-reports/markdown/runtime_params.json | 2 +- 4 files changed, 3282 insertions(+), 4740 deletions(-) diff --git a/ci-reports/markdown/TEST-REPORT.md b/ci-reports/markdown/TEST-REPORT.md index 76043e15..ec214263 100644 --- a/ci-reports/markdown/TEST-REPORT.md +++ b/ci-reports/markdown/TEST-REPORT.md @@ -9,7 +9,7 @@ ============================= test session starts ============================== platform linux -- Python 3.8.20, pytest-8.3.4, pluggy-1.5.0 rootdir: /workspace/tligui_y/slic -plugins: html-4.1.1, cov-5.0.0, allure-pytest-2.13.5, metadata-3.1.1, md-report-0.6.2, json-report-1.5.0 +plugins: cov-5.0.0, metadata-3.1.1, allure-pytest-2.13.5, html-4.1.1, json-report-1.5.0, md-report-0.6.2 collected 72 items / 2 errors tests/test_io_utils.py ..FFFFFF.F @@ -93,7 +93,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 0x7fae6028ffd0> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fc8db861b20> def test_permission_error(monkeypatch): # Patch open to raise PermissionError simulating access denial @@ -117,7 +117,7 @@ E PermissionError: Permission denied tests/test_io_utils.py:34: PermissionError _____________________________ test_mock_open_error _____________________________ -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fae602b2220> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fc8dbe4e940> def test_mock_open_error(monkeypatch): # Mock open() to raise IOError simulating read error @@ -134,7 +134,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): @@ -160,7 +160,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 0x7fae603f07f0> +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fc8dbb190d0> def test_os_error(monkeypatch): # Patch os.remove to raise OSError simulating filesystem error @@ -328,7 +328,7 @@ tests/test_math_utils.py:106: StopIteration The above exception was the direct cause of the following exception: cls = -func = . at 0x7fae6028a160> +func = . at 0x7fc8dbdf9700> when = 'call' reraise = (, ) @@ -457,7 +457,7 @@ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'non_existent_module_xyz' -import_ = +import_ = > ??? E ModuleNotFoundError: No module named 'non_existent_module_xyz' @@ -562,17 +562,17 @@ ERROR tests/test_param.py::TestDynamic::test_sum_positive !!!!!!!!!!!!!!!!!!!!!!!!!!!!!! KeyboardInterrupt !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! /workspace/tligui_y/slic/tests/test_string_utils.py:52: KeyboardInterrupt (to show a full traceback on KeyboardInterrupt use --full-trace) -=== 32 failed, 35 passed, 1 skipped, 2 xfailed, 1 warning, 3 errors in 0.90s === +=== 32 failed, 35 passed, 1 skipped, 2 xfailed, 1 warning, 3 errors in 0.74s === ``` --- # 🧪 Test Report -*Generated on 2025-07-18 00:26:27 CEST* +*Generated on 2025-07-18 00:29:36 CEST* ## 🧾 General Info -- **duration**: 0.8962745666503906 +- **duration**: 0.7349338531494141 - **root**: /workspace/tligui_y/slic - **environment**: {} @@ -586,3365 +586,2750 @@ ERROR tests/test_param.py::TestDynamic::test_sum_positive - **Collected**: 72 ## 🔎 Tests -
-✅ Passed (36) +✅ Passed (36) -
-
-📁 test_io_utils.py +
+ ▶️ 📁 test_io_utils.py -
-
-🔧 Function: `test_read_file` - -
-
-✅ #1 +
+ ▶️ ▶️ 🔧 Function: `test_read_file` +
+ ▶️ ▶️ ▶️ ▶️ ✅ #1 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.004306296003051102 + ```python +0.003183303982950747 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.000571946962736547 + ```python +0.000520461006090045 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00029698002617806196 + ```python +0.0002535360399633646 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
-
-
+ - - + -
-
-🔧 Function: `test_write_file` - -
-
-✅ #2 +
+ ▶️ ▶️ 🔧 Function: `test_write_file` +
+ ▶️ ▶️ ▶️ ▶️ ✅ #2 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0006139889592304826 + ```python +0.0004358310252428055 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00035124504938721657 + ```python +0.00028906704392284155 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00016759790014475584 + ```python +0.00013553700409829617 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_write_file_readonly` - -
-
-✅ #9 +
+ ▶️ ▶️ 🔧 Function: `test_write_file_readonly` +
+ ▶️ ▶️ ▶️ ▶️ ✅ #9 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.000790423946455121 + ```python +0.0006233400199562311 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0016696290113031864 + ```python +0.0008126039756461978 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00020388595294207335 + ```python +0.00013969396241009235 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + - - + -
-
-📁 test_math_utils.py +
+ ▶️ 📁 test_math_utils.py -
-
-🔧 Function: `test_addition_pass` +
+ ▶️ ▶️ 🔧 Function: `test_addition_pass` -
-
-✅ #13 params: a=2, b=2, expected=4 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #13 params: a=2, b=2, expected=4 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: a: 2 b: 2 expected: 4 id: 2-2-4 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0006266889395192266 + ```python +0.0002830910962074995 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0003135770093649626 + ```python +0.00014288700185716152 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00021815195214003325 + ```python +0.00014877808280289173 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #14 params: a=1, b=5, expected=6 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #14 params: a=1, b=5, expected=6 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: a: 1 b: 5 expected: 6 id: 1-5-6 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00031828798819333315 + ```python +0.00025408295914530754 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00015017902478575706 + ```python +0.0001446719979867339 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00018608698155730963 + ```python +0.0001369500532746315 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #15 params: a=3, b=4, expected=7 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #15 params: a=3, b=4, expected=7 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: a: 3 b: 4 expected: 7 id: 3-4-7 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002867189468815923 + ```python +0.00024076597765088081 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014246301725506783 + ```python +0.0001389490207657218 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001411490375176072 + ```python +0.0001406229566782713 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #16 params: a=3, b=5, expected=8 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #16 params: a=3, b=5, expected=8 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: a: 3 b: 5 expected: 8 id: 3-5-8 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00025434407871216536 + ```python +0.0002468959428369999 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014103809371590614 + ```python +0.00014104600995779037 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014201703015714884 + ```python +0.00013901700731366873 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #17 params: a=3, b=6, expected=9 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #17 params: a=3, b=6, expected=9 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: a: 3 b: 6 expected: 9 id: 3-6-9 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002622130559757352 + ```python +0.00024020206183195114 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00015429197810590267 + ```python +0.00013102998491376638 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001656960230320692 + ```python +0.0001361500471830368 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_addition_pass_id` +
+ ▶️ ▶️ 🔧 Function: `test_addition_pass_id` -
-
-✅ #18 params: a=2, b=2, expected=4 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #18 params: a=2, b=2, expected=4 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: a: 2 b: 2 expected: 4 id: a=2,b=2,expected=4 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00025275396183133125 + ```python +0.0002415910130366683 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013588101137429476 + ```python +0.0001301660668104887 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001452550059184432 + ```python +0.0001317569985985756 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #19 params: a=1, b=5, expected=6 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #19 params: a=1, b=5, expected=6 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: a: 1 b: 5 expected: 6 id: a=1,b=5,expected=6 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00026378489565104246 + ```python +0.0002534240484237671 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013017805758863688 + ```python +0.00013181997928768396 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013587402645498514 + ```python +0.00013589998707175255 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #20 params: a=3, b=4, expected=7 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #20 params: a=3, b=4, expected=7 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: a: 3 b: 4 expected: 7 id: a=3,b=4,expected=7 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00025852699764072895 + ```python +0.00023517408408224583 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013113906607031822 + ```python +0.00013340706937015057 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014550902415066957 + ```python +0.00013555504847317934 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + - - + -
-
-📁 test_param.py +
+ ▶️ 📁 test_param.py -
-
-🔧 Function: `test_basic_ids` +
+ ▶️ ▶️ 🔧 Function: `test_basic_ids` -
-
-✅ #41 params: x=1 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #41 params: x=1 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: x: 1 id: one ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0003136700252071023 + ```python +0.00022683595307171345 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00016707798931747675 + ```python +0.00013785692863166332 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017272902186959982 + ```python +0.0001213139621540904 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #42 params: x=2 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #42 params: x=2 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: x: 2 id: two ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00029526709113270044 + ```python +0.0001855340087786317 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017044006381183863 + ```python +0.00012989796232432127 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001502669183537364 + ```python +0.00011642801109701395 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_with_reason_and_marks` +
+ ▶️ ▶️ 🔧 Function: `test_with_reason_and_marks` -
-
-✅ #43 params: x=10 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #43 params: x=10 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: x: 10 id: ten ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00020872498862445354 + ```python +0.00019500497728586197 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00022565294057130814 + ```python +0.00013293104711920023 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002101990394294262 + ```python +0.00011387607082724571 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_multiple_positional_args` +
+ ▶️ ▶️ 🔧 Function: `test_multiple_positional_args` -
-
-✅ #45 params: a=1, b=2 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #45 params: a=1, b=2 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: a: 1 b: 2 id: 1-2 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.000269743031822145 + ```python +0.00023485510610044003 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001429729163646698 + ```python +0.0001301289303228259 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013475806917995214 + ```python +0.0001444709487259388 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #46 params: a=3, b=4 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #46 params: a=3, b=4 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: a: 3 b: 4 id: 3-4 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00021690200082957745 + ```python +0.0002185039920732379 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013456202577799559 + ```python +0.00012918002903461456 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014851789455860853 + ```python +0.00012547406367957592 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_non_literal_with_id` +
+ ▶️ ▶️ 🔧 Function: `test_non_literal_with_id` -
-
-✅ #47 params: data=(object object at 0x7fae602c7960) +
+ ▶️ ▶️ ▶️ ▶️ ✅ #47 params: data=(object object at 0x7fc8dba56960) -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: - data: + data: id: custom-obj ``` - - + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017125706654042006 + ```python +0.00016074697487056255 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00012643402442336082 + ```python +0.00012187391985207796 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001131939934566617 + ```python +0.00012184493243694305 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - - + - - + -
-
-🔧 Function: `test_timedistance_v1` +
+ ▶️ ▶️ 🔧 Function: `test_timedistance_v1` -
-
-✅ #48 params: a=2001-12-12 00:00:00, b=2001-12-11 00:00:00, expected=1 day, 0:00:00 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #48 params: a=2001-12-12 00:00:00, b=2001-12-11 00:00:00, expected=1 day, 0:00:00 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: a: 2001-12-12 00:00:00 b: 2001-12-11 00:00:00 expected: 1 day, 0:00:00 id: a0-b0-expected0 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00026055704802274704 + ```python +0.0003144890069961548 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013210391625761986 + ```python +0.00013600208330899477 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014868495054543018 + ```python +0.00013658800162374973 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #49 params: a=2001-12-11 00:00:00, b=2001-12-12 00:00:00, expected=-1 day, 0:00:00 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #49 params: a=2001-12-11 00:00:00, b=2001-12-12 00:00:00, expected=-1 day, 0:00:00 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: a: 2001-12-11 00:00:00 b: 2001-12-12 00:00:00 expected: -1 day, 0:00:00 id: a1-b1-expected1 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002443230478093028 + ```python +0.00025163101963698864 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001372970873489976 + ```python +0.00013094593305140734 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00015910109505057335 + ```python +0.00015740597154945135 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_dynamic` +
+ ▶️ ▶️ 🔧 Function: `test_dynamic` -
-
-✅ #51 params: val=10 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #51 params: val=10 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: val: 10 id: ten ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002069480251520872 + ```python +0.0001827609958127141 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013452803250402212 + ```python +0.00014138605911284685 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00011848495341837406 + ```python +0.00011861801613122225 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #52 params: val=20 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #52 params: val=20 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: val: 20 id: twenty ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00021362106781452894 + ```python +0.00017238897271454334 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001467599067837 + ```python +0.00012772902846336365 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00012570701073855162 + ```python +0.00011693499982357025 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #53 params: val=30 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #53 params: val=30 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: val: 30 id: thirty ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017798191402107477 + ```python +0.00016038795001804829 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00012322899419814348 + ```python +0.0001225980231538415 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00011093297507613897 + ```python +0.00011477002408355474 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_element_type` +
+ ▶️ ▶️ 🔧 Function: `test_element_type` -
-
-✅ #54 params: element=fire +
+ ▶️ ▶️ ▶️ ▶️ ✅ #54 params: element=fire -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: element: fire id: \U0001f525 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017261295579373837 + ```python +0.0001698529813438654 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00012608605902642012 + ```python +0.0001259329728782177 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00011374696623533964 + ```python +0.0001232579816132784 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #55 params: element=water +
+ ▶️ ▶️ ▶️ ▶️ ✅ #55 params: element=water -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: element: water id: \U0001f4a7 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00016028794925659895 + ```python +0.00015953800175338984 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014094100333750248 + ```python +0.00012113794218748808 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00011498399544507265 + ```python +0.00011762604117393494 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #56 params: element=earth +
+ ▶️ ▶️ ▶️ ▶️ ✅ #56 params: element=earth -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: element: earth id: \U0001f30d ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002072829520329833 + ```python +0.0001710359938442707 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014872406609356403 + ```python +0.00012369605246931314 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00011872604954987764 + ```python +0.00011078105308115482 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_combination` +
+ ▶️ ▶️ 🔧 Function: `test_combination` -
-
-✅ #57 params: y=a, x=1 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #57 params: y=a, x=1 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: y: a x: 1 id: a-1 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00021455308888107538 + ```python +0.00020548899192363024 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014168606139719486 + ```python +0.0001242560101673007 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00012749095913022757 + ```python +0.0001299300929531455 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #58 params: y=a, x=2 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #58 params: y=a, x=2 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: y: a x: 2 id: a-2 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00019941292703151703 + ```python +0.00020911404862999916 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001357640139758587 + ```python +0.00012463994789868593 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013084406964480877 + ```python +0.0001241409918293357 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #59 params: y=b, x=1 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #59 params: y=b, x=1 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: y: b x: 1 id: b-1 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00024122896138578653 + ```python +0.0002099310513585806 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014157895930111408 + ```python +0.00012690306175500154 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00012688792776316404 + ```python +0.00012475205585360527 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #60 params: y=b, x=2 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #60 params: y=b, x=2 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: y: b x: 2 id: b-2 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00021152407862246037 + ```python +0.00021132698748260736 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014219689182937145 + ```python +0.00012683705426752567 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00012789294123649597 + ```python +0.00012315891217440367 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_indirect_fixture` +
+ ▶️ ▶️ 🔧 Function: `test_indirect_fixture` -
-
-✅ #61 params: complex_setup=1 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #61 params: complex_setup=1 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: complex_setup: 1 id: 1 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001611530315130949 + ```python +0.0003057820722460747 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013298005796968937 + ```python +0.0001411809353157878 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00011068396270275116 + ```python +0.00011999893467873335 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ -
-
-✅ #62 params: complex_setup=2 +
+ ▶️ ▶️ ▶️ ▶️ ✅ #62 params: complex_setup=2 -
-
-📌 Runtime Parameters +
+ ▶️ ▶️ ▶️ ▶️ 📌 Runtime Parameters -```python + ```python params: complex_setup: 2 id: 2 ``` -
-
+
### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001679400447756052 + ```python +0.00017237907741218805 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00012880505528301 + ```python +0.00012540293391793966 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00011504907160997391 + ```python +0.00011429807636886835 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + - - + -
-
-📁 test_string_utils.py +
+ ▶️ 📁 test_string_utils.py -
-
-🔧 Function: `test_uppercase_normal` - -
-
-✅ #64 +
+ ▶️ ▶️ 🔧 Function: `test_uppercase_normal` +
+ ▶️ ▶️ ▶️ ▶️ ✅ #64 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013635295908898115 + ```python +0.00012968597002327442 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00015654903836548328 + ```python +0.0001441800268366933 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00011012493632733822 + ```python +0.00010189192835241556 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
- -
+ - - + -
-
-🔧 Function: `test_reverse_string` - -
-
-✅ #66 +
+ ▶️ ▶️ 🔧 Function: `test_reverse_string` +
+ ▶️ ▶️ ▶️ ▶️ ✅ #66 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014302402269095182 + ```python +0.00011872604954987764 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014991499483585358 + ```python +0.00013808405492454767 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00010383105836808681 + ```python +9.939505252987146e-05 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_warning_emit` - -
-
-✅ #67 +
+ ▶️ ▶️ 🔧 Function: `test_warning_emit` +
+ ▶️ ▶️ ▶️ ▶️ ✅ #67 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00010647089220583439 + ```python +0.00013507402036339045 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014862604439258575 + ```python +0.00014259805902838707 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -9.751599282026291e-05 + ```python +9.633193258196115e-05 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_import_warning` - -
-
-✅ #70 +
+ ▶️ ▶️ 🔧 Function: `test_import_warning` +
+ ▶️ ▶️ ▶️ ▶️ ✅ #70 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00012547499500215054 + ```python +0.00011590705253183842 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014379899948835373 + ```python +0.00015360000543296337 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00010347901843488216 + ```python +0.00010351906530559063 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_keyboard_interrupt_direct` - -
-
-✅ #72 +
+ ▶️ ▶️ 🔧 Function: `test_keyboard_interrupt_direct` +
+ ▶️ ▶️ ▶️ ▶️ ✅ #72 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013485201634466648 + ```python +0.00011638796422630548 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
+ + +
+ + +
+ + + -
- - - - - - - - - - - - -
-❌ Failed (32) +❌ Failed (32) -
-
-📁 test_io_utils.py +
+ ▶️ 📁 test_io_utils.py -
-
-🔧 Function: `test_cause_io_error` - -
-
-❌ #3 +
+ ▶️ ▶️ 🔧 Function: `test_cause_io_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #3 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00012574007268995047 + ```python +0.00011880102101713419 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00021748803555965424 + ```python +0.0001596389338374138 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/functions/io_utils.py lineno: 10 message: OSError: Forced IO Error for testing ``` -
-
+
-
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_io_utils.py lineno: 25 message: None @@ -3952,14 +3337,12 @@ message: OSError: Forced IO Error for testing lineno: 10 message: OSError ``` -
-
+
-
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_cause_io_error(): # Raises manual IOError to simulate IO failure > cause_io_error() @@ -3973,111 +3356,91 @@ E OSError: Forced IO Error for testing functions/io_utils.py:10: OSError ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00023570703342556953 + ```python +0.00013844703789800406 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_file_not_found` - -
-
-❌ #4 +
+ ▶️ ▶️ 🔧 Function: `test_file_not_found` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #4 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00015622703358530998 + ```python +0.00015413400251418352 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00022247503511607647 + ```python +0.00018551689572632313 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/functions/io_utils.py lineno: 2 message: FileNotFoundError: [Errno 2] No such file or directory: 'nonexistent.file' ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_io_utils.py lineno: 29 message: None @@ -4085,14 +3448,12 @@ message: FileNotFoundError: [Errno 2] No such file or directory: 'nonexistent.fi lineno: 2 message: FileNotFoundError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_file_not_found(): # Reading non-existing file raises FileNotFoundError > read_file("nonexistent.file") @@ -4108,111 +3469,91 @@ E FileNotFoundError: [Errno 2] No such file or directory: 'nonexistent.fil functions/io_utils.py:2: FileNotFoundError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.000229722005315125 + ```python +0.00013960304204374552 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_permission_error` - -
-
-❌ #5 +
+ ▶️ ▶️ 🔧 Function: `test_permission_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #5 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002890599425882101 + ```python +0.0002196000423282385 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00021123397164046764 + ```python +0.00018055399414151907 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_io_utils.py lineno: 34 message: PermissionError: Permission denied ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_io_utils.py lineno: 36 message: None @@ -4223,15 +3564,13 @@ message: PermissionError: Permission denied lineno: 34 message: PermissionError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fae6028ffd0> + ```python +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fc8db861b20> def test_permission_error(monkeypatch): # Patch open to raise PermissionError simulating access denial @@ -4254,111 +3593,91 @@ E PermissionError: Permission denied tests/test_io_utils.py:34: PermissionError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00033454701770097017 + ```python +0.00016889104153960943 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_mock_open_error` - -
-
-❌ #6 +
+ ▶️ ▶️ 🔧 Function: `test_mock_open_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #6 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00031896703876554966 + ```python +0.00019034603610634804 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.004306557006202638 + ```python +0.003268423955887556 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/unittest/mock.py lineno: 1140 message: OSError: Mocked IOError ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_io_utils.py lineno: 43 message: None @@ -4372,15 +3691,13 @@ message: OSError: Mocked IOError lineno: 1140 message: OSError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fae602b2220> + ```python +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fc8dbe4e940> def test_mock_open_error(monkeypatch): # Mock open() to raise IOError simulating read error @@ -4397,7 +3714,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): @@ -4412,123 +3729,101 @@ E OSError: Mocked IOError .pixi/envs/default/lib/python3.8/unittest/mock.py:1140: OSError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0003688819706439972 + ```python +0.0002619749866425991 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_file_handle_closed_error` - -
-
-❌ #7 +
+ ▶️ ▶️ 🔧 Function: `test_file_handle_closed_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #7 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00015604693908244371 + ```python +0.00013766600750386715 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00020421610679477453 + ```python +0.0001751220552250743 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_io_utils.py lineno: 50 message: ValueError: I/O operation on closed file ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_io_utils.py lineno: 50 message: ValueError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_file_handle_closed_error(): # Accessing closed file raises ValueError f = io.StringIO("content") @@ -4538,111 +3833,91 @@ E ValueError: I/O operation on closed file tests/test_io_utils.py:50: ValueError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002443010453134775 + ```python +0.00015921995509415865 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_os_error` - -
-
-❌ #8 +
+ ▶️ ▶️ 🔧 Function: `test_os_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #8 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002920050173997879 + ```python +0.00022113800514489412 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002279150066897273 + ```python +0.00018846907187253237 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_io_utils.py lineno: 55 message: OSError: Simulated OSError ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_io_utils.py lineno: 57 message: None @@ -4650,15 +3925,13 @@ message: OSError: Simulated OSError lineno: 55 message: OSError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python -monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fae603f07f0> + ```python +monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fc8dbb190d0> def test_os_error(monkeypatch): # Patch os.remove to raise OSError simulating filesystem error @@ -4678,123 +3951,101 @@ E OSError: Simulated OSError tests/test_io_utils.py:55: OSError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00028776098042726517 + ```python +0.00016740697901695967 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_file_not_found_error` - -
-
-❌ #10 +
+ ▶️ ▶️ 🔧 Function: `test_file_not_found_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #10 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014310400001704693 + ```python +0.00013322499580681324 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00021585507784038782 + ```python +0.00016511103603988886 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python 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 +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_io_utils.py lineno: 69 message: FileNotFoundError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_file_not_found_error(): # Raises FileNotFoundError when opening a non-existent file > open("no_such_file.txt", "r") @@ -4802,131 +4053,107 @@ E FileNotFoundError: [Errno 2] No such file or directory: 'no_such_file.tx tests/test_io_utils.py:69: FileNotFoundError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001964949769899249 + ```python +0.00013849197421222925 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + - - + -
-
-📁 test_math_utils.py +
+ ▶️ 📁 test_math_utils.py -
-
-🔧 Function: `test_broken` - -
-
-❌ #11 +
+ ▶️ ▶️ 🔧 Function: `test_broken` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #11 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002285620430484414 + ```python +0.00012896500993520021 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00026626104954630136 + ```python +0.0001528519205749035 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 16 message: NameError: name 'want_the_test_to_fail' is not defined ``` -
-
+
-
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 16 message: NameError ``` -
-
+
-
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_broken(): # simulating a broken or faulty test implementation that will cause the test to error > want_the_test_to_fail @@ -4934,123 +4161,101 @@ E NameError: name 'want_the_test_to_fail' is not defined tests/test_math_utils.py:16: NameError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0003435349790379405 + ```python +0.00014043995179235935 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_call_missing_function` - -
-
-❌ #12 +
+ ▶️ ▶️ 🔧 Function: `test_call_missing_function` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #12 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00024598208256065845 + ```python +0.00011897191870957613 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00030592805705964565 + ```python +0.00015244295354932547 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python 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 +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 20 message: AttributeError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_call_missing_function(): # Accessing a missing function attribute raises AttributeError > getattr(math_utils, "non_existent_function")() @@ -5058,124 +4263,102 @@ E AttributeError: module 'functions.math_utils' has no attribute 'non_exis tests/test_math_utils.py:20: AttributeError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.000351533992215991 + ```python +0.00013583304826170206 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_addition_fail` - -
-
-❌ #21 +
+ ▶️ ▶️ 🔧 Function: `test_addition_fail` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #21 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001164870336651802 + ```python +0.00010374805424362421 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.000529204960912466 + ```python +0.00039142800960689783 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 51 message: assert 4 == 5 + where 4 = addition(2, 2) ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 51 message: AssertionError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_addition_fail(): # Assertion failure: expected incorrect result > assert addition(2, 2) == 5 @@ -5184,111 +4367,91 @@ E + where 4 = addition(2, 2) tests/test_math_utils.py:51: AssertionError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001749310176819563 + ```python +0.00013773201499134302 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_division_zero` - -
-
-❌ #22 +
+ ▶️ ▶️ 🔧 Function: `test_division_zero` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #22 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00012580794282257557 + ```python +0.00011692405678331852 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001714410027489066 + ```python +0.0001713130623102188 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/functions/math_utils.py lineno: 5 message: ZeroDivisionError: division by zero ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 55 message: None @@ -5296,14 +4459,12 @@ message: ZeroDivisionError: division by zero lineno: 5 message: ZeroDivisionError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_division_zero(): # Will raise ZeroDivisionError if not handled in division > division(1, 0) @@ -5319,123 +4480,101 @@ E ZeroDivisionError: division by zero functions/math_utils.py:5: ZeroDivisionError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017552892677485943 + ```python +0.00014083797577768564 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_runtime_error` - -
-
-❌ #24 +
+ ▶️ ▶️ 🔧 Function: `test_runtime_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #24 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.000138917937874794 + ```python +0.00011756899766623974 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017516897059977055 + ```python +0.00014687702059745789 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 64 message: RuntimeError: Forced runtime error ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 64 message: RuntimeError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_runtime_error(): # Test raises an uncaught RuntimeError > raise RuntimeError("Forced runtime error") @@ -5443,123 +4582,101 @@ E RuntimeError: Forced runtime error tests/test_math_utils.py:64: RuntimeError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.000181674025952816 + ```python +0.00013669300824403763 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_memory_error` - -
-
-❌ #25 +
+ ▶️ ▶️ 🔧 Function: `test_memory_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #25 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013709708582609892 + ```python +0.00012419698759913445 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001730889780446887 + ```python +0.00014996598474681377 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 68 message: MemoryError: Simulated memory error ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 68 message: MemoryError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_memory_error(): # Manually raise MemoryError to simulate out-of-memory condition > raise MemoryError("Simulated memory error") @@ -5567,123 +4684,101 @@ E MemoryError: Simulated memory error tests/test_math_utils.py:68: MemoryError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017778691835701466 + ```python +0.00013615295756608248 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_timeout_error` - -
-
-❌ #26 +
+ ▶️ ▶️ 🔧 Function: `test_timeout_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #26 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014070607721805573 + ```python +0.000122333993203938 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001705199247226119 + ```python +0.00014753395225852728 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 72 message: TimeoutError: Simulated timeout error ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 72 message: TimeoutError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_timeout_error(): # Manually raise TimeoutError simulating timeout conditions > raise TimeoutError("Simulated timeout error") @@ -5691,111 +4786,91 @@ E TimeoutError: Simulated timeout error tests/test_math_utils.py:72: TimeoutError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017727899830788374 + ```python +0.00013956998009234667 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_recursion_error` - -
-
-❌ #27 +
+ ▶️ ▶️ 🔧 Function: `test_recursion_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #27 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014782603830099106 + ```python +0.00011762604117393494 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00130878493655473 + ```python +0.0007552830502390862 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 77 message: RecursionError: maximum recursion depth exceeded ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 78 message: None @@ -5806,14 +4881,12 @@ message: RecursionError: maximum recursion depth exceeded lineno: 77 message: in recursive ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_recursion_error(): # Infinite recursion triggers RecursionError def recursive(): @@ -5829,123 +4902,101 @@ tests/test_math_utils.py:77: in recursive E RecursionError: maximum recursion depth exceeded !!! Recursion detected (same locals & position) ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00026467000134289265 + ```python +0.00013795995619148016 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_floating_point_error` - -
-
-❌ #28 +
+ ▶️ ▶️ 🔧 Function: `test_floating_point_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #28 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001670120982453227 + ```python +0.00013496004976332188 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017793197184801102 + ```python +0.00014908495359122753 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 82 message: FloatingPointError: Simulated floating point error ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 82 message: FloatingPointError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_floating_point_error(): # Manually raise FloatingPointError > raise FloatingPointError("Simulated floating point error") @@ -5953,123 +5004,101 @@ E FloatingPointError: Simulated floating point error tests/test_math_utils.py:82: FloatingPointError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00025685690343379974 + ```python +0.00015191594138741493 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_floating_point_overflow` - -
-
-❌ #29 +
+ ▶️ ▶️ 🔧 Function: `test_floating_point_overflow` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #29 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014658109284937382 + ```python +0.00012572004925459623 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00019527401309460402 + ```python +0.00015637197066098452 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 86 message: OverflowError: math range error ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 86 message: OverflowError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_floating_point_overflow(): # Exponential overflow triggers OverflowError > math.exp(1000) @@ -6077,123 +5106,101 @@ E OverflowError: math range error tests/test_math_utils.py:86: OverflowError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00022860197350382805 + ```python +0.0001491669099777937 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_value_error` - -
-
-❌ #30 +
+ ▶️ ▶️ 🔧 Function: `test_value_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #30 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014049606397747993 + ```python +0.0001179249957203865 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017635896801948547 + ```python +0.00015133898705244064 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 90 message: ValueError: invalid literal for int() with base 10: 'invalid' ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 90 message: ValueError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_value_error(): # ValueError on invalid integer conversion > int("invalid") @@ -6201,123 +5208,101 @@ E ValueError: invalid literal for int() with base 10: 'invalid' tests/test_math_utils.py:90: ValueError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00020224496256560087 + ```python +0.00013880501501262188 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_wrong_argument_error` - -
-
-❌ #31 +
+ ▶️ ▶️ 🔧 Function: `test_wrong_argument_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #31 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013670395128428936 + ```python +0.00011816993355751038 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001706910552456975 + ```python +0.00016017805319279432 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 94 message: TypeError: 'int' object is not iterable ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 94 message: TypeError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_wrong_argument_error(): # TypeError when passing wrong argument type to sum > sum(5) @@ -6325,123 +5310,101 @@ E TypeError: 'int' object is not iterable tests/test_math_utils.py:94: TypeError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00020355090964585543 + ```python +0.00013587204739451408 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_unhandled_exception` - -
-
-❌ #32 +
+ ▶️ ▶️ 🔧 Function: `test_unhandled_exception` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #32 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001392109552398324 + ```python +0.00012269802391529083 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001671910285949707 + ```python +0.00014939799439162016 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 98 message: Exception: Generic unhandled exception ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 98 message: Exception ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_unhandled_exception(): # Raises generic unhandled Exception > raise Exception("Generic unhandled exception") @@ -6449,123 +5412,101 @@ E Exception: Generic unhandled exception tests/test_math_utils.py:98: Exception ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001798539888113737 + ```python +0.00013754400424659252 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_custom_error` - -
-
-❌ #33 +
+ ▶️ ▶️ 🔧 Function: `test_custom_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #33 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014726503286510706 + ```python +0.00012225192040205002 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00016783899627625942 + ```python +0.00015238404739648104 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 102 message: test_math_utils.CustomError: Custom error simulation ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 102 message: CustomError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_custom_error(): # Raises user-defined CustomError exception > raise CustomError("Custom error simulation") @@ -6573,111 +5514,91 @@ E test_math_utils.CustomError: Custom error simulation tests/test_math_utils.py:102: CustomError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00018462399020791054 + ```python +0.00013502291403710842 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_stop_iteration_direct` - -
-
-❌ #34 +
+ ▶️ ▶️ 🔧 Function: `test_stop_iteration_direct` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #34 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001389459939673543 + ```python +0.00013388902880251408 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017475895583629608 + ```python +0.0001541139790788293 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/.pixi/envs/default/lib/python3.8/site-packages/_pytest/capture.py lineno: 880 message: RuntimeError: generator raised StopIteration ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: .pixi/envs/default/lib/python3.8/site-packages/_pytest/runner.py lineno: 341 message: None @@ -6712,14 +5633,12 @@ message: RuntimeError: generator raised StopIteration lineno: 880 message: RuntimeError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_stop_iteration_direct(): # Directly raise StopIteration exception > raise StopIteration() @@ -6730,7 +5649,7 @@ tests/test_math_utils.py:106: StopIteration The above exception was the direct cause of the following exception: cls = -func = . at 0x7fae6028a160> +func = . at 0x7fc8dbdf9700> when = 'call' reraise = (, ) @@ -6791,123 +5710,101 @@ E RuntimeError: generator raised StopIteration .pixi/envs/default/lib/python3.8/site-packages/_pytest/capture.py:880: RuntimeError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0003095419378951192 + ```python +0.00023151002824306488 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_generator_exit_direct` - -
-
-❌ #35 +
+ ▶️ ▶️ 🔧 Function: `test_generator_exit_direct` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #35 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001769110094755888 + ```python +0.00013180309906601906 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00020568410400301218 + ```python +0.00016179599333554506 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 110 message: GeneratorExit ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 110 message: GeneratorExit ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_generator_exit_direct(): # Directly raise GeneratorExit exception > raise GeneratorExit() @@ -6915,99 +5812,81 @@ E GeneratorExit tests/test_math_utils.py:110: GeneratorExit ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00023662694729864597 + ```python +0.00016816100105643272 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_malformed_code` - -
-
-❌ #36 +
+ ▶️ ▶️ 🔧 Function: `test_malformed_code` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #36 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002019780222326517 + ```python +0.0001299940049648285 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00018902705051004887 + ```python +0.00016754399985074997 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 114 message: File "", line 1 @@ -7015,26 +5894,22 @@ message: File "", line 1 ^ SyntaxError: invalid syntax ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 114 message: SyntaxError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_malformed_code(): # SyntaxError when executing malformed Python code > exec("def bad(:\n pass") @@ -7045,123 +5920,101 @@ E SyntaxError: invalid syntax tests/test_math_utils.py:114: SyntaxError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00024386902805417776 + ```python +0.0001430849079042673 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_sys_exit` - -
-
-❌ #37 +
+ ▶️ ▶️ 🔧 Function: `test_sys_exit` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #37 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014441402163356543 + ```python +0.0001225150190293789 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017439201474189758 + ```python +0.00015958503354340792 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 118 message: SystemExit: 1 ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 118 message: SystemExit ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_sys_exit(): # Simulate SystemExit via sys.exit > sys.exit(1) @@ -7169,111 +6022,91 @@ E SystemExit: 1 tests/test_math_utils.py:118: SystemExit ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00022690696641802788 + ```python +0.00013937789481133223 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_broken_function` - -
-
-❌ #38 +
+ ▶️ ▶️ 🔧 Function: `test_broken_function` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #38 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014154601376503706 + ```python +0.00012046599294990301 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001765410415828228 + ```python +0.0001525909174233675 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 123 message: TypeError: Broken function ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 124 message: None @@ -7281,14 +6114,12 @@ message: TypeError: Broken function lineno: 123 message: TypeError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_broken_function(): # Simulate broken function raising TypeError def broken_func(*args, **kwargs): @@ -7306,234 +6137,192 @@ E TypeError: Broken function tests/test_math_utils.py:123: TypeError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00022815202828496695 + ```python +0.0001400840701535344 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_import_error` - -
-
-❌ #39 +
+ ▶️ ▶️ 🔧 Function: `test_import_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #39 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00014002597890794277 + ```python +0.00011761393398046494 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017895095515996218 + ```python +0.0001518189674243331 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 127 message: ImportError: Simulated ImportError ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 127 message: ImportError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_import_error(): > raise ImportError("Simulated ImportError") E ImportError: Simulated ImportError tests/test_math_utils.py:127: ImportError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00025391695089638233 + ```python +0.00013587891589850187 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_module_not_found_error` - -
-
-❌ #40 +
+ ▶️ ▶️ 🔧 Function: `test_module_not_found_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #40 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00015680002979934216 + ```python +0.00014413404278457165 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0005429580342024565 + ```python +0.00044747802894562483 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: lineno: 973 message: ModuleNotFoundError: No module named 'non_existent_module_xyz' ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 131 message: None @@ -7550,14 +6339,12 @@ message: ModuleNotFoundError: No module named 'non_existent_module_xyz' lineno: 973 message: ModuleNotFoundError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_module_not_found_error(): # Raises ModuleNotFoundError (subclass of ImportError) for missing module > importlib.import_module("non_existent_module_xyz") @@ -7573,138 +6360,114 @@ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'non_existent_module_xyz' -import_ = +import_ = > ??? E ModuleNotFoundError: No module named 'non_existent_module_xyz' :973: ModuleNotFoundError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0002993399975821376 + ```python +0.00014360796194523573 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + - - + -
-
-📁 test_param.py +
+ ▶️ 📁 test_param.py -
-
-🔧 Function: `test_addition` - -
-
-❌ #63 +
+ ▶️ ▶️ 🔧 Function: `test_addition` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #63 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00010142195969820023 + ```python +0.00011221796739846468 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0003700490342453122 + ```python +0.0001454079756513238 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_param.py lineno: 107 message: NameError: name 'addition' is not defined ``` -
-
+
-
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_param.py lineno: 107 message: NameError ``` -
-
+
-
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python a = 5, b = 5, expected = 10 def test_addition(a = 5, b = 5, expected = 10): @@ -7714,119 +6477,97 @@ E NameError: name 'addition' is not defined tests/test_param.py:107: NameError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00016236398369073868 + ```python +0.00013918406330049038 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + - - + -
-
-📁 test_string_utils.py +
+ ▶️ 📁 test_string_utils.py -
-
-🔧 Function: `test_uppercase_type_error` - -
-
-❌ #65 +
+ ▶️ ▶️ 🔧 Function: `test_uppercase_type_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #65 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00011388503480702639 + ```python +0.00011787901166826487 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00015681900549679995 + ```python +0.00014299899339675903 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/functions/string_utils.py lineno: 3 message: TypeError: Input cannot be None ``` -
-
+
-
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_string_utils.py lineno: 16 message: None @@ -7834,14 +6575,12 @@ message: TypeError: Input cannot be None lineno: 3 message: TypeError ``` -
-
+
-
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_uppercase_type_error(): # TypeError when input is None (invalid input) > uppercase(None) @@ -7858,123 +6597,101 @@ E TypeError: Input cannot be None functions/string_utils.py:3: TypeError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001603430137038231 + ```python +0.0001391819678246975 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_unicode_decode_error` - -
-
-❌ #68 +
+ ▶️ ▶️ 🔧 Function: `test_unicode_decode_error` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #68 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00011520693078637123 + ```python +0.00011914805509150028 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00015714101027697325 + ```python +0.00014873396139591932 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_string_utils.py lineno: 28 message: UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_string_utils.py lineno: 28 message: UnicodeDecodeError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_unicode_decode_error(): # UnicodeDecodeError when decoding invalid byte sequence > b'\xff'.decode('utf-8') @@ -7982,123 +6699,101 @@ E UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: tests/test_string_utils.py:28: UnicodeDecodeError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001567919971421361 + ```python +0.00013484398368746042 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + -
-
-🔧 Function: `test_unicode_decode_surrogateescape` - -
-
-❌ #69 +
+ ▶️ ▶️ 🔧 Function: `test_unicode_decode_surrogateescape` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #69 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013649591710418463 + ```python +0.00011834397446364164 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001611219486221671 + ```python +0.00019019993487745523 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_string_utils.py lineno: 32 message: UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte ``` -
-
+ -
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_string_utils.py lineno: 32 message: UnicodeDecodeError ``` -
-
+ -
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python def test_unicode_decode_surrogateescape(): # UnicodeDecodeError with strict error handler on invalid byte > b"\x80".decode("utf-8", errors="strict") @@ -8106,140 +6801,114 @@ E UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: tests/test_string_utils.py:32: UnicodeDecodeError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001575159840285778 + ```python +0.00013372208923101425 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ + + + + + + + + + -
- - - - - - - - - - - - -
-❌ Xfailed (2) +❌ Xfailed (2) -
-
-📁 test_math_utils.py +
+ ▶️ 📁 test_math_utils.py -
-
-🔧 Function: `test_multiply_xfail` - -
-
-❌ #23 +
+ ▶️ ▶️ 🔧 Function: `test_multiply_xfail` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #23 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00016228994354605675 + ```python +0.00013090099673718214 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00031209690496325493 + ```python +0.00025955901946872473 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python skipped ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_math_utils.py lineno: 60 message: assert 4 == 5 + where 4 = multiply(2, 2) ``` -
-
+
-
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_math_utils.py lineno: 60 message: AssertionError ``` -
-
+
-
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python @pytest.mark.xfail(reason="Expected failure") def test_multiply_xfail(): # Expected fail test (xfail): incorrect expected multiply result @@ -8249,107 +6918,87 @@ E + where 4 = multiply(2, 2) tests/test_math_utils.py:60: AssertionError ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00017384195234626532 + ```python +0.00013651500921696424 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ - -
+ - - + - - + -
-
-📁 test_string_utils.py +
+ ▶️ 📁 test_string_utils.py -
-
-🔧 Function: `test_xfail_uppercase_digits` - -
-
-❌ #71 +
+ ▶️ ▶️ 🔧 Function: `test_xfail_uppercase_digits` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #71 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001203090650960803 + ```python +0.00011555606033653021 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
### 🔧 Call Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0006781549891456962 + ```python +0.0006106479559093714 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python skipped ``` -
-
+
-
-
-📌 Crash +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Crash -```python + ```python path: /workspace/tligui_y/slic/tests/test_string_utils.py lineno: 41 message: AssertionError: assert 'ABC123' == 'ABC1234' @@ -8358,26 +7007,22 @@ message: AssertionError: assert 'ABC123' == 'ABC1234' ? - + ABC123 ``` -
-
+
-
-
-📌 Traceback +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Traceback -```python + ```python - path: tests/test_string_utils.py lineno: 41 message: AssertionError ``` -
-
+
-
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python @pytest.mark.xfail(reason="Expected failure: uppercase does not handle digits") def test_xfail_uppercase_digits(): # Expected fail test because uppercase won't change digits @@ -8390,180 +7035,144 @@ E + ABC123 tests/test_string_utils.py:41: AssertionError ``` -
-
+ ### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00016156700439751148 + ```python +0.00013629195746034384 ``` -
-
+ -
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+ + + + + + + + + + -
- - - - - - - - - - - - -
-❌ Skipped (1) +❌ Skipped (1) -
-
-📁 test_param.py +
+ ▶️ 📁 test_param.py -
-
-🔧 Function: `test_with_reason_and_marks` - -
-
-❌ #44 +
+ ▶️ ▶️ 🔧 Function: `test_with_reason_and_marks` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #44 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0003702279645949602 + ```python +0.00021416402887552977 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python skipped ``` -
-
+
-
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python ('/workspace/tligui_y/slic/tests/test_param.py', 12, 'Skipped: nope') ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001295830588787794 + ```python +0.00011537503451108932 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
+ + +
+ + +
+ + + -
- - - - - - - - - - - - -
-❌ Error (1) +❌ Error (1) -
-
-📁 test_param.py +
+ ▶️ 📁 test_param.py -
-
-🔧 Function: `TestDynamic` - -
-
-❌ #50 +
+ ▶️ ▶️ 🔧 Function: `TestDynamic` +
+ ▶️ ▶️ ▶️ ▶️ ❌ #50 + ### 🔧 Setup Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.0001580159878358245 + ```python +0.000137584051117301 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python failed ``` -
-
+
-
-
-📌 Longrepr +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Longrepr -```python + ```python file /workspace/tligui_y/slic/tests/test_param.py, line 71 def test_sum_positive(self, x, y): E fixture 'x' not found @@ -8572,58 +7181,47 @@ E fixture 'x' not found /workspace/tligui_y/slic/tests/test_param.py:71 ``` -
-
+
### 🔧 Teardown Phase -
-
-📌 Duration +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Duration -```python -0.00013017805758863688 + ```python +0.00013303104788064957 ``` -
-
+
-
-
-📌 Outcome +
+ ▶️ ▶️ ▶️ ▶️ ▶️ 📌 Outcome -```python + ```python passed ``` -
-
+
+ + +
+ + +
+ + + -
- - - - - - - - - - - - ## 📚 Collected files -
-
-✅ (1 tests) +
+ ▶️ ✅ (1 tests) -
-
- +
+ ▶️ ▶️ ✅ -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8632,22 +7230,18 @@ passed ``` -
-
+
-
-
+ -
-
-✅ ci-reports (12 tests) +
+ ▶️ ✅ ci-reports (12 tests) -
-
-✅ ci-reports +
+ ▶️ ▶️ ✅ ci-reports -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8660,14 +7254,12 @@ passed ``` -
-
+
-
-
-✅ ci-reports/allure +
+ ▶️ ▶️ ✅ ci-reports/allure -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8684,14 +7276,12 @@ passed ``` -
-
+
-
-
-✅ ci-reports/allure/data +
+ ▶️ ▶️ ✅ ci-reports/allure/data -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8699,14 +7289,12 @@ passed ``` -
-
+ -
-
-✅ ci-reports/allure/export +
+ ▶️ ▶️ ✅ ci-reports/allure/export -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8714,14 +7302,12 @@ passed ``` -
-
+ -
-
-✅ ci-reports/allure/history +
+ ▶️ ▶️ ✅ ci-reports/allure/history -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8729,14 +7315,12 @@ passed ``` -
-
+ -
-
-✅ ci-reports/allure/plugin +
+ ▶️ ▶️ ✅ ci-reports/allure/plugin -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8749,14 +7333,12 @@ passed ``` -
-
+ -
-
-✅ ci-reports/allure/plugin/behaviors +
+ ▶️ ▶️ ✅ ci-reports/allure/plugin/behaviors -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8764,14 +7346,12 @@ passed ``` -
-
+ -
-
-✅ ci-reports/allure/plugin/packages +
+ ▶️ ▶️ ✅ ci-reports/allure/plugin/packages -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8779,14 +7359,12 @@ passed ``` -
-
+ -
-
-✅ ci-reports/allure/plugin/screen-diff +
+ ▶️ ▶️ ✅ ci-reports/allure/plugin/screen-diff -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8794,14 +7372,12 @@ passed ``` -
-
+ -
-
-✅ ci-reports/allure/widgets +
+ ▶️ ▶️ ✅ ci-reports/allure/widgets -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8809,14 +7385,12 @@ passed ``` -
-
+ -
-
-✅ ci-reports/coverage +
+ ▶️ ▶️ ✅ ci-reports/coverage -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8824,14 +7398,12 @@ passed ``` -
-
+ -
-
-✅ ci-reports/markdown +
+ ▶️ ▶️ ✅ ci-reports/markdown -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8839,22 +7411,18 @@ passed ``` -
-
+ - -
+ -
-
-✅ functions (1 tests) +
+ ▶️ ✅ functions (1 tests) -
-
-✅ functions +
+ ▶️ ▶️ ✅ functions -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8862,22 +7430,18 @@ passed ``` -
-
+
-
-
+ -
-
-❌ tests (8 tests) +
+ ▶️ ❌ tests (8 tests) -
-
-✅ tests +
+ ▶️ ▶️ ✅ tests -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -8896,14 +7460,12 @@ passed ``` -
-
+
-
-
-❌ tests/test_broken_fct.py +
+ ▶️ ▶️ ❌ tests/test_broken_fct.py -- **Outcome:** `failed` + - **Outcome:** `failed` - **result:** ```python @@ -8940,14 +7502,12 @@ E SyntaxError: invalid syntax ``` -
-
+
-
-
-❌ tests/test_collector_error.py +
+ ▶️ ▶️ ❌ tests/test_collector_error.py -- **Outcome:** `failed` + - **Outcome:** `failed` - **result:** ```python @@ -8968,14 +7528,12 @@ E ModuleNotFoundError: No module named 'no_existing_module' ``` -
-
+ -
-
-✅ tests/test_io_utils.py +
+ ▶️ ▶️ ✅ tests/test_io_utils.py -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -9012,14 +7570,12 @@ E ModuleNotFoundError: No module named 'no_existing_module' ``` -
-
+ -
-
-✅ tests/test_math_utils.py +
+ ▶️ ▶️ ✅ tests/test_math_utils.py -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -9116,14 +7672,12 @@ E ModuleNotFoundError: No module named 'no_existing_module' ``` -
-
+ -
-
-✅ tests/test_param.py +
+ ▶️ ▶️ ✅ tests/test_param.py -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -9198,14 +7752,12 @@ E ModuleNotFoundError: No module named 'no_existing_module' ``` -
-
+ -
-
-✅ tests/test_param.py::TestDynamic +
+ ▶️ ▶️ ✅ tests/test_param.py::TestDynamic -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -9215,14 +7767,12 @@ E ModuleNotFoundError: No module named 'no_existing_module' ``` -
-
+ -
-
-✅ tests/test_string_utils.py +
+ ▶️ ▶️ ✅ tests/test_string_utils.py -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -9256,22 +7806,18 @@ E ModuleNotFoundError: No module named 'no_existing_module' ``` -
-
+ - -
+ -
-
-✅ . (1 tests) +
+ ▶️ ✅ . (1 tests) -
-
-✅ . +
+ ▶️ ▶️ ✅ . -- **Outcome:** `passed` + - **Outcome:** `passed` - **result:** ```python @@ -9284,20 +7830,17 @@ E ModuleNotFoundError: No module named 'no_existing_module' ``` -
-
+
-
-
+ ## ⚠️ Warnings -
-
-Warnings #1 +
+ ▶️ Warnings #1 -``` + ``` message: Test warning category: UserWarning when: runtest @@ -9305,6 +7848,5 @@ filename: /workspace/tligui_y/slic/tests/test_string_utils.py lineno: 24 ``` -
-
+ diff --git a/ci-reports/markdown/json-tree-view.txt b/ci-reports/markdown/json-tree-view.txt index eb20690d..0e6b4a4d 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: 1752791186.7075896 -├── duration: 0.8962745666503906 +├── created: 1752791376.1234715 +├── duration: 0.7349338531494141 ├── exitcode: 2 ├── root: /workspace/tligui_y/slic ├── environment @@ -523,13 +523,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.004306296003051102 +│ │ │ ├── duration: 0.003183303982950747 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.000571946962736547 +│ │ │ ├── duration: 0.000520461006090045 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00029698002617806196 +│ │ ├── duration: 0.0002535360399633646 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_io_utils.py::test_write_file @@ -542,13 +542,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0006139889592304826 +│ │ │ ├── duration: 0.0004358310252428055 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00035124504938721657 +│ │ │ ├── duration: 0.00028906704392284155 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00016759790014475584 +│ │ ├── duration: 0.00013553700409829617 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_io_utils.py::test_cause_io_error @@ -561,10 +561,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00012574007268995047 +│ │ │ ├── duration: 0.00011880102101713419 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00021748803555965424 +│ │ │ ├── duration: 0.0001596389338374138 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/functions/io_utils.py @@ -593,7 +593,7 @@ │ │ │ │ │ │ functions/io_utils.py:10: OSError │ │ └── teardown -│ │ ├── duration: 0.00023570703342556953 +│ │ ├── duration: 0.00013844703789800406 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_io_utils.py::test_file_not_found @@ -606,10 +606,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00015622703358530998 +│ │ │ ├── duration: 0.00015413400251418352 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00022247503511607647 +│ │ │ ├── duration: 0.00018551689572632313 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/functions/io_utils.py @@ -642,7 +642,7 @@ │ │ │ │ │ │ functions/io_utils.py:2: FileNotFoundError │ │ └── teardown -│ │ ├── duration: 0.000229722005315125 +│ │ ├── duration: 0.00013960304204374552 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_io_utils.py::test_permission_error @@ -655,10 +655,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0002890599425882101 +│ │ │ ├── duration: 0.0002196000423282385 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00021123397164046764 +│ │ │ ├── duration: 0.00018055399414151907 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_io_utils.py @@ -678,7 +678,7 @@ │ │ │ │ ├── lineno: 34 │ │ │ │ └── message: PermissionError │ │ │ └── longrepr: monkeypatch = <_pytest.monkeypatch.MonkeyPatch object -│ │ │ at 0x7fae6028ffd0> +│ │ │ at 0x7fc8db861b20> │ │ │ │ │ │ def test_permission_error(monkeypatch): │ │ │ # Patch open to raise PermissionError simulating access @@ -704,7 +704,7 @@ │ │ │ │ │ │ tests/test_io_utils.py:34: PermissionError │ │ └── teardown -│ │ ├── duration: 0.00033454701770097017 +│ │ ├── duration: 0.00016889104153960943 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_io_utils.py::test_mock_open_error @@ -717,10 +717,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00031896703876554966 +│ │ │ ├── duration: 0.00019034603610634804 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.004306557006202638 +│ │ │ ├── duration: 0.003268423955887556 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: @@ -746,7 +746,7 @@ │ │ │ │ ├── lineno: 1140 │ │ │ │ └── message: OSError │ │ │ └── longrepr: monkeypatch = <_pytest.monkeypatch.MonkeyPatch object -│ │ │ at 0x7fae602b2220> +│ │ │ at 0x7fc8dbe4e940> │ │ │ │ │ │ def test_mock_open_error(monkeypatch): │ │ │ # Mock open() to raise IOError simulating read error @@ -768,7 +768,7 @@ │ │ │ _ _ _ _ _ _ _ _ │ │ │ │ │ │ self = +│ │ │ id='140500659398304'> │ │ │ args = ('file.txt', 'r'), kwargs = {}, effect = OSError('Mocked │ │ │ IOError') │ │ │ @@ -786,7 +786,7 @@ │ │ │ │ │ │ .pixi/envs/default/lib/python3.8/unittest/mock.py:1140: OSError │ │ └── teardown -│ │ ├── duration: 0.0003688819706439972 +│ │ ├── duration: 0.0002619749866425991 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_io_utils.py::test_file_handle_closed_error @@ -799,10 +799,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00015604693908244371 +│ │ │ ├── duration: 0.00013766600750386715 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00020421610679477453 +│ │ │ ├── duration: 0.0001751220552250743 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_io_utils.py @@ -822,7 +822,7 @@ │ │ │ │ │ │ tests/test_io_utils.py:50: ValueError │ │ └── teardown -│ │ ├── duration: 0.0002443010453134775 +│ │ ├── duration: 0.00015921995509415865 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_io_utils.py::test_os_error @@ -835,10 +835,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0002920050173997879 +│ │ │ ├── duration: 0.00022113800514489412 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0002279150066897273 +│ │ │ ├── duration: 0.00018846907187253237 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_io_utils.py @@ -854,7 +854,7 @@ │ │ │ │ ├── lineno: 55 │ │ │ │ └── message: OSError │ │ │ └── longrepr: monkeypatch = <_pytest.monkeypatch.MonkeyPatch object -│ │ │ at 0x7fae603f07f0> +│ │ │ at 0x7fc8dbb190d0> │ │ │ │ │ │ def test_os_error(monkeypatch): │ │ │ # Patch os.remove to raise OSError simulating filesystem @@ -876,7 +876,7 @@ │ │ │ │ │ │ tests/test_io_utils.py:55: OSError │ │ └── teardown -│ │ ├── duration: 0.00028776098042726517 +│ │ ├── duration: 0.00016740697901695967 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_io_utils.py::test_write_file_readonly @@ -889,13 +889,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.000790423946455121 +│ │ │ ├── duration: 0.0006233400199562311 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0016696290113031864 +│ │ │ ├── duration: 0.0008126039756461978 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00020388595294207335 +│ │ ├── duration: 0.00013969396241009235 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_io_utils.py::test_file_not_found_error @@ -908,10 +908,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00014310400001704693 +│ │ │ ├── duration: 0.00013322499580681324 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00021585507784038782 +│ │ │ ├── duration: 0.00016511103603988886 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_io_utils.py @@ -932,7 +932,7 @@ │ │ │ │ │ │ tests/test_io_utils.py:69: FileNotFoundError │ │ └── teardown -│ │ ├── duration: 0.0001964949769899249 +│ │ ├── duration: 0.00013849197421222925 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_broken @@ -945,10 +945,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0002285620430484414 +│ │ │ ├── duration: 0.00012896500993520021 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00026626104954630136 +│ │ │ ├── duration: 0.0001528519205749035 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -968,7 +968,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:16: NameError │ │ └── teardown -│ │ ├── duration: 0.0003435349790379405 +│ │ ├── duration: 0.00014043995179235935 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_call_missing_function @@ -981,10 +981,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00024598208256065845 +│ │ │ ├── duration: 0.00011897191870957613 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00030592805705964565 +│ │ │ ├── duration: 0.00015244295354932547 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1005,7 +1005,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:20: AttributeError │ │ └── teardown -│ │ ├── duration: 0.000351533992215991 +│ │ ├── duration: 0.00013583304826170206 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_addition_pass[2-2-4] @@ -1021,13 +1021,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0006266889395192266 +│ │ │ ├── duration: 0.0002830910962074995 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0003135770093649626 +│ │ │ ├── duration: 0.00014288700185716152 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00021815195214003325 +│ │ ├── duration: 0.00014877808280289173 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_addition_pass[1-5-6] @@ -1043,13 +1043,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00031828798819333315 +│ │ │ ├── duration: 0.00025408295914530754 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00015017902478575706 +│ │ │ ├── duration: 0.0001446719979867339 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00018608698155730963 +│ │ ├── duration: 0.0001369500532746315 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_addition_pass[3-4-7] @@ -1065,13 +1065,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0002867189468815923 +│ │ │ ├── duration: 0.00024076597765088081 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00014246301725506783 +│ │ │ ├── duration: 0.0001389490207657218 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.0001411490375176072 +│ │ ├── duration: 0.0001406229566782713 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_addition_pass[3-5-8] @@ -1087,13 +1087,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00025434407871216536 +│ │ │ ├── duration: 0.0002468959428369999 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00014103809371590614 +│ │ │ ├── duration: 0.00014104600995779037 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00014201703015714884 +│ │ ├── duration: 0.00013901700731366873 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_addition_pass[3-6-9] @@ -1109,13 +1109,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0002622130559757352 +│ │ │ ├── duration: 0.00024020206183195114 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00015429197810590267 +│ │ │ ├── duration: 0.00013102998491376638 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.0001656960230320692 +│ │ ├── duration: 0.0001361500471830368 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_addition_pass_id @@ -1131,13 +1131,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00025275396183133125 +│ │ │ ├── duration: 0.0002415910130366683 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00013588101137429476 +│ │ │ ├── duration: 0.0001301660668104887 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.0001452550059184432 +│ │ ├── duration: 0.0001317569985985756 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_addition_pass_id @@ -1153,13 +1153,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00026378489565104246 +│ │ │ ├── duration: 0.0002534240484237671 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00013017805758863688 +│ │ │ ├── duration: 0.00013181997928768396 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00013587402645498514 +│ │ ├── duration: 0.00013589998707175255 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_addition_pass_id @@ -1175,13 +1175,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00025852699764072895 +│ │ │ ├── duration: 0.00023517408408224583 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00013113906607031822 +│ │ │ ├── duration: 0.00013340706937015057 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00014550902415066957 +│ │ ├── duration: 0.00013555504847317934 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_addition_fail @@ -1194,10 +1194,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0001164870336651802 +│ │ │ ├── duration: 0.00010374805424362421 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.000529204960912466 +│ │ │ ├── duration: 0.00039142800960689783 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1217,7 +1217,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:51: AssertionError │ │ └── teardown -│ │ ├── duration: 0.0001749310176819563 +│ │ ├── duration: 0.00013773201499134302 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_division_zero @@ -1230,10 +1230,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00012580794282257557 +│ │ │ ├── duration: 0.00011692405678331852 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0001714410027489066 +│ │ │ ├── duration: 0.0001713130623102188 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/functions/math_utils.py @@ -1265,7 +1265,7 @@ │ │ │ │ │ │ functions/math_utils.py:5: ZeroDivisionError │ │ └── teardown -│ │ ├── duration: 0.00017552892677485943 +│ │ ├── duration: 0.00014083797577768564 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_multiply_xfail @@ -1280,10 +1280,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00016228994354605675 +│ │ │ ├── duration: 0.00013090099673718214 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00031209690496325493 +│ │ │ ├── duration: 0.00025955901946872473 │ │ │ ├── outcome: skipped │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1305,7 +1305,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:60: AssertionError │ │ └── teardown -│ │ ├── duration: 0.00017384195234626532 +│ │ ├── duration: 0.00013651500921696424 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_runtime_error @@ -1318,10 +1318,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.000138917937874794 +│ │ │ ├── duration: 0.00011756899766623974 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00017516897059977055 +│ │ │ ├── duration: 0.00014687702059745789 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1339,7 +1339,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:64: RuntimeError │ │ └── teardown -│ │ ├── duration: 0.000181674025952816 +│ │ ├── duration: 0.00013669300824403763 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_memory_error @@ -1352,10 +1352,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00013709708582609892 +│ │ │ ├── duration: 0.00012419698759913445 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0001730889780446887 +│ │ │ ├── duration: 0.00014996598474681377 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1374,7 +1374,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:68: MemoryError │ │ └── teardown -│ │ ├── duration: 0.00017778691835701466 +│ │ ├── duration: 0.00013615295756608248 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_timeout_error @@ -1387,10 +1387,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00014070607721805573 +│ │ │ ├── duration: 0.000122333993203938 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0001705199247226119 +│ │ │ ├── duration: 0.00014753395225852728 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1409,7 +1409,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:72: TimeoutError │ │ └── teardown -│ │ ├── duration: 0.00017727899830788374 +│ │ ├── duration: 0.00013956998009234667 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_recursion_error @@ -1422,10 +1422,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00014782603830099106 +│ │ │ ├── duration: 0.00011762604117393494 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00130878493655473 +│ │ │ ├── duration: 0.0007552830502390862 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1460,7 +1460,7 @@ │ │ │ E RecursionError: maximum recursion depth exceeded │ │ │ !!! Recursion detected (same locals & position) │ │ └── teardown -│ │ ├── duration: 0.00026467000134289265 +│ │ ├── duration: 0.00013795995619148016 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_floating_point_error @@ -1473,10 +1473,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0001670120982453227 +│ │ │ ├── duration: 0.00013496004976332188 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00017793197184801102 +│ │ │ ├── duration: 0.00014908495359122753 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1495,7 +1495,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:82: FloatingPointError │ │ └── teardown -│ │ ├── duration: 0.00025685690343379974 +│ │ ├── duration: 0.00015191594138741493 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_floating_point_overflow @@ -1508,10 +1508,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00014658109284937382 +│ │ │ ├── duration: 0.00012572004925459623 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00019527401309460402 +│ │ │ ├── duration: 0.00015637197066098452 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1529,7 +1529,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:86: OverflowError │ │ └── teardown -│ │ ├── duration: 0.00022860197350382805 +│ │ ├── duration: 0.0001491669099777937 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_value_error @@ -1542,10 +1542,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00014049606397747993 +│ │ │ ├── duration: 0.0001179249957203865 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00017635896801948547 +│ │ │ ├── duration: 0.00015133898705244064 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1565,7 +1565,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:90: ValueError │ │ └── teardown -│ │ ├── duration: 0.00020224496256560087 +│ │ ├── duration: 0.00013880501501262188 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_wrong_argument_error @@ -1578,10 +1578,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00013670395128428936 +│ │ │ ├── duration: 0.00011816993355751038 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0001706910552456975 +│ │ │ ├── duration: 0.00016017805319279432 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1599,7 +1599,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:94: TypeError │ │ └── teardown -│ │ ├── duration: 0.00020355090964585543 +│ │ ├── duration: 0.00013587204739451408 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_unhandled_exception @@ -1612,10 +1612,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0001392109552398324 +│ │ │ ├── duration: 0.00012269802391529083 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0001671910285949707 +│ │ │ ├── duration: 0.00014939799439162016 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1633,7 +1633,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:98: Exception │ │ └── teardown -│ │ ├── duration: 0.0001798539888113737 +│ │ ├── duration: 0.00013754400424659252 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_custom_error @@ -1646,10 +1646,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00014726503286510706 +│ │ │ ├── duration: 0.00012225192040205002 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00016783899627625942 +│ │ │ ├── duration: 0.00015238404739648104 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1668,7 +1668,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:102: CustomError │ │ └── teardown -│ │ ├── duration: 0.00018462399020791054 +│ │ ├── duration: 0.00013502291403710842 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_stop_iteration_direct @@ -1681,10 +1681,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0001389459939673543 +│ │ │ ├── duration: 0.00013388902880251408 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00017475895583629608 +│ │ │ ├── duration: 0.0001541139790788293 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: @@ -1771,7 +1771,7 @@ │ │ │ │ │ │ cls = │ │ │ func = . at -│ │ │ 0x7fae6028a160> +│ │ │ 0x7fc8dbdf9700> │ │ │ when = 'call' │ │ │ reraise = (, ) @@ -1854,7 +1854,7 @@ │ │ │ .pixi/envs/default/lib/python3.8/site-packages/_pytest/capture.p │ │ │ y:880: RuntimeError │ │ └── teardown -│ │ ├── duration: 0.0003095419378951192 +│ │ ├── duration: 0.00023151002824306488 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_generator_exit_direct @@ -1867,10 +1867,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0001769110094755888 +│ │ │ ├── duration: 0.00013180309906601906 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00020568410400301218 +│ │ │ ├── duration: 0.00016179599333554506 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1888,7 +1888,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:110: GeneratorExit │ │ └── teardown -│ │ ├── duration: 0.00023662694729864597 +│ │ ├── duration: 0.00016816100105643272 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_malformed_code @@ -1901,10 +1901,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0002019780222326517 +│ │ │ ├── duration: 0.0001299940049648285 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00018902705051004887 +│ │ │ ├── duration: 0.00016754399985074997 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1928,7 +1928,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:114: SyntaxError │ │ └── teardown -│ │ ├── duration: 0.00024386902805417776 +│ │ ├── duration: 0.0001430849079042673 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_sys_exit @@ -1941,10 +1941,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00014441402163356543 +│ │ │ ├── duration: 0.0001225150190293789 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00017439201474189758 +│ │ │ ├── duration: 0.00015958503354340792 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -1962,7 +1962,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:118: SystemExit │ │ └── teardown -│ │ ├── duration: 0.00022690696641802788 +│ │ ├── duration: 0.00013937789481133223 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_broken_function @@ -1975,10 +1975,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00014154601376503706 +│ │ │ ├── duration: 0.00012046599294990301 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0001765410415828228 +│ │ │ ├── duration: 0.0001525909174233675 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -2011,7 +2011,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:123: TypeError │ │ └── teardown -│ │ ├── duration: 0.00022815202828496695 +│ │ ├── duration: 0.0001400840701535344 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_import_error @@ -2024,10 +2024,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00014002597890794277 +│ │ │ ├── duration: 0.00011761393398046494 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00017895095515996218 +│ │ │ ├── duration: 0.0001518189674243331 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_math_utils.py @@ -2044,7 +2044,7 @@ │ │ │ │ │ │ tests/test_math_utils.py:127: ImportError │ │ └── teardown -│ │ ├── duration: 0.00025391695089638233 +│ │ ├── duration: 0.00013587891589850187 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_math_utils.py::test_module_not_found_error @@ -2057,10 +2057,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00015680002979934216 +│ │ │ ├── duration: 0.00014413404278457165 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0005429580342024565 +│ │ │ ├── duration: 0.00044747802894562483 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: @@ -2108,7 +2108,7 @@ │ │ │ _ _ _ _ _ _ _ _ │ │ │ │ │ │ name = 'non_existent_module_xyz' -│ │ │ import_ = +│ │ │ import_ = │ │ │ │ │ │ > ??? │ │ │ E ModuleNotFoundError: No module named @@ -2116,7 +2116,7 @@ │ │ │ │ │ │ :973: ModuleNotFoundError │ │ └── teardown -│ │ ├── duration: 0.0002993399975821376 +│ │ ├── duration: 0.00014360796194523573 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_basic_ids @@ -2132,13 +2132,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0003136700252071023 +│ │ │ ├── duration: 0.00022683595307171345 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00016707798931747675 +│ │ │ ├── duration: 0.00013785692863166332 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00017272902186959982 +│ │ ├── duration: 0.0001213139621540904 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_basic_ids @@ -2154,13 +2154,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00029526709113270044 +│ │ │ ├── duration: 0.0001855340087786317 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00017044006381183863 +│ │ │ ├── duration: 0.00012989796232432127 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.0001502669183537364 +│ │ ├── duration: 0.00011642801109701395 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_with_reason_and_marks @@ -2176,13 +2176,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00020872498862445354 +│ │ │ ├── duration: 0.00019500497728586197 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00022565294057130814 +│ │ │ ├── duration: 0.00013293104711920023 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.0002101990394294262 +│ │ ├── duration: 0.00011387607082724571 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_with_reason_and_marks @@ -2199,12 +2199,12 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0003702279645949602 +│ │ │ ├── duration: 0.00021416402887552977 │ │ │ ├── outcome: skipped │ │ │ └── longrepr: ('/workspace/tligui_y/slic/tests/test_param.py', 12, │ │ │ 'Skipped: nope') │ │ └── teardown -│ │ ├── duration: 0.0001295830588787794 +│ │ ├── duration: 0.00011537503451108932 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_multiple_positional_args[1-2] @@ -2220,13 +2220,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.000269743031822145 +│ │ │ ├── duration: 0.00023485510610044003 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0001429729163646698 +│ │ │ ├── duration: 0.0001301289303228259 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00013475806917995214 +│ │ ├── duration: 0.0001444709487259388 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_multiple_positional_args[3-4] @@ -2242,13 +2242,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00021690200082957745 +│ │ │ ├── duration: 0.0002185039920732379 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00013456202577799559 +│ │ │ ├── duration: 0.00012918002903461456 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00014851789455860853 +│ │ ├── duration: 0.00012547406367957592 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_non_literal_with_id @@ -2264,13 +2264,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00017125706654042006 +│ │ │ ├── duration: 0.00016074697487056255 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00012643402442336082 +│ │ │ ├── duration: 0.00012187391985207796 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.0001131939934566617 +│ │ ├── duration: 0.00012184493243694305 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_timedistance_v1 @@ -2286,13 +2286,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00026055704802274704 +│ │ │ ├── duration: 0.0003144890069961548 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00013210391625761986 +│ │ │ ├── duration: 0.00013600208330899477 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00014868495054543018 +│ │ ├── duration: 0.00013658800162374973 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_timedistance_v1 @@ -2308,13 +2308,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0002443230478093028 +│ │ │ ├── duration: 0.00025163101963698864 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0001372970873489976 +│ │ │ ├── duration: 0.00013094593305140734 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00015910109505057335 +│ │ ├── duration: 0.00015740597154945135 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::TestDynamic::test_sum_positive @@ -2328,7 +2328,7 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0001580159878358245 +│ │ │ ├── duration: 0.000137584051117301 │ │ │ ├── outcome: failed │ │ │ └── longrepr: file /workspace/tligui_y/slic/tests/test_param.py, │ │ │ line 71 @@ -2345,7 +2345,7 @@ │ │ │ │ │ │ /workspace/tligui_y/slic/tests/test_param.py:71 │ │ └── teardown -│ │ ├── duration: 0.00013017805758863688 +│ │ ├── duration: 0.00013303104788064957 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_dynamic @@ -2359,13 +2359,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0002069480251520872 +│ │ │ ├── duration: 0.0001827609958127141 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00013452803250402212 +│ │ │ ├── duration: 0.00014138605911284685 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00011848495341837406 +│ │ ├── duration: 0.00011861801613122225 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_dynamic @@ -2379,13 +2379,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00021362106781452894 +│ │ │ ├── duration: 0.00017238897271454334 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0001467599067837 +│ │ │ ├── duration: 0.00012772902846336365 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00012570701073855162 +│ │ ├── duration: 0.00011693499982357025 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_dynamic @@ -2399,13 +2399,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00017798191402107477 +│ │ │ ├── duration: 0.00016038795001804829 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00012322899419814348 +│ │ │ ├── duration: 0.0001225980231538415 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00011093297507613897 +│ │ ├── duration: 0.00011477002408355474 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_element_type[\U0001f525] @@ -2419,13 +2419,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00017261295579373837 +│ │ │ ├── duration: 0.0001698529813438654 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00012608605902642012 +│ │ │ ├── duration: 0.0001259329728782177 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00011374696623533964 +│ │ ├── duration: 0.0001232579816132784 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_element_type[\U0001f4a7] @@ -2439,13 +2439,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00016028794925659895 +│ │ │ ├── duration: 0.00015953800175338984 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00014094100333750248 +│ │ │ ├── duration: 0.00012113794218748808 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00011498399544507265 +│ │ ├── duration: 0.00011762604117393494 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_element_type[\U0001f30d] @@ -2459,13 +2459,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0002072829520329833 +│ │ │ ├── duration: 0.0001710359938442707 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00014872406609356403 +│ │ │ ├── duration: 0.00012369605246931314 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00011872604954987764 +│ │ ├── duration: 0.00011078105308115482 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_combination @@ -2481,13 +2481,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00021455308888107538 +│ │ │ ├── duration: 0.00020548899192363024 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00014168606139719486 +│ │ │ ├── duration: 0.0001242560101673007 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00012749095913022757 +│ │ ├── duration: 0.0001299300929531455 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_combination @@ -2503,13 +2503,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00019941292703151703 +│ │ │ ├── duration: 0.00020911404862999916 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0001357640139758587 +│ │ │ ├── duration: 0.00012463994789868593 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00013084406964480877 +│ │ ├── duration: 0.0001241409918293357 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_combination @@ -2525,13 +2525,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00024122896138578653 +│ │ │ ├── duration: 0.0002099310513585806 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00014157895930111408 +│ │ │ ├── duration: 0.00012690306175500154 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00012688792776316404 +│ │ ├── duration: 0.00012475205585360527 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_combination @@ -2547,13 +2547,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00021152407862246037 +│ │ │ ├── duration: 0.00021132698748260736 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00014219689182937145 +│ │ │ ├── duration: 0.00012683705426752567 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00012789294123649597 +│ │ ├── duration: 0.00012315891217440367 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_indirect_fixture[1] @@ -2569,13 +2569,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0001611530315130949 +│ │ │ ├── duration: 0.0003057820722460747 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00013298005796968937 +│ │ │ ├── duration: 0.0001411809353157878 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00011068396270275116 +│ │ ├── duration: 0.00011999893467873335 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_indirect_fixture[2] @@ -2591,13 +2591,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0001679400447756052 +│ │ │ ├── duration: 0.00017237907741218805 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00012880505528301 +│ │ │ ├── duration: 0.00012540293391793966 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00011504907160997391 +│ │ ├── duration: 0.00011429807636886835 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_param.py::test_addition @@ -2610,10 +2610,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00010142195969820023 +│ │ │ ├── duration: 0.00011221796739846468 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0003700490342453122 +│ │ │ ├── duration: 0.0001454079756513238 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_param.py @@ -2633,7 +2633,7 @@ │ │ │ │ │ │ tests/test_param.py:107: NameError │ │ └── teardown -│ │ ├── duration: 0.00016236398369073868 +│ │ ├── duration: 0.00013918406330049038 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_string_utils.py::test_uppercase_normal @@ -2646,13 +2646,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00013635295908898115 +│ │ │ ├── duration: 0.00012968597002327442 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00015654903836548328 +│ │ │ ├── duration: 0.0001441800268366933 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00011012493632733822 +│ │ ├── duration: 0.00010189192835241556 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_string_utils.py::test_uppercase_type_error @@ -2665,10 +2665,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00011388503480702639 +│ │ │ ├── duration: 0.00011787901166826487 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00015681900549679995 +│ │ │ ├── duration: 0.00014299899339675903 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/functions/string_utils.py @@ -2700,7 +2700,7 @@ │ │ │ │ │ │ functions/string_utils.py:3: TypeError │ │ └── teardown -│ │ ├── duration: 0.0001603430137038231 +│ │ ├── duration: 0.0001391819678246975 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_string_utils.py::test_reverse_string @@ -2713,13 +2713,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00014302402269095182 +│ │ │ ├── duration: 0.00011872604954987764 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00014991499483585358 +│ │ │ ├── duration: 0.00013808405492454767 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00010383105836808681 +│ │ ├── duration: 9.939505252987146e-05 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_string_utils.py::test_warning_emit @@ -2732,13 +2732,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00010647089220583439 +│ │ │ ├── duration: 0.00013507402036339045 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00014862604439258575 +│ │ │ ├── duration: 0.00014259805902838707 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 9.751599282026291e-05 +│ │ ├── duration: 9.633193258196115e-05 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_string_utils.py::test_unicode_decode_error @@ -2751,10 +2751,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00011520693078637123 +│ │ │ ├── duration: 0.00011914805509150028 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00015714101027697325 +│ │ │ ├── duration: 0.00014873396139591932 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_string_utils.py @@ -2774,7 +2774,7 @@ │ │ │ │ │ │ tests/test_string_utils.py:28: UnicodeDecodeError │ │ └── teardown -│ │ ├── duration: 0.0001567919971421361 +│ │ ├── duration: 0.00013484398368746042 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: @@ -2788,10 +2788,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00013649591710418463 +│ │ │ ├── duration: 0.00011834397446364164 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0001611219486221671 +│ │ │ ├── duration: 0.00019019993487745523 │ │ │ ├── outcome: failed │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_string_utils.py @@ -2812,7 +2812,7 @@ │ │ │ │ │ │ tests/test_string_utils.py:32: UnicodeDecodeError │ │ └── teardown -│ │ ├── duration: 0.0001575159840285778 +│ │ ├── duration: 0.00013372208923101425 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_string_utils.py::test_import_warning @@ -2825,13 +2825,13 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.00012547499500215054 +│ │ │ ├── duration: 0.00011590705253183842 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.00014379899948835373 +│ │ │ ├── duration: 0.00015360000543296337 │ │ │ └── outcome: passed │ │ └── teardown -│ │ ├── duration: 0.00010347901843488216 +│ │ ├── duration: 0.00010351906530559063 │ │ └── outcome: passed │ ├── - │ │ ├── nodeid: tests/test_string_utils.py::test_xfail_uppercase_digits @@ -2846,10 +2846,10 @@ │ │ │ ├── slic │ │ │ └── │ │ ├── setup -│ │ │ ├── duration: 0.0001203090650960803 +│ │ │ ├── duration: 0.00011555606033653021 │ │ │ └── outcome: passed │ │ ├── call -│ │ │ ├── duration: 0.0006781549891456962 +│ │ │ ├── duration: 0.0006106479559093714 │ │ │ ├── outcome: skipped │ │ │ ├── crash │ │ │ │ ├── path: /workspace/tligui_y/slic/tests/test_string_utils.py @@ -2878,7 +2878,7 @@ │ │ │ │ │ │ tests/test_string_utils.py:41: AssertionError │ │ └── teardown -│ │ ├── duration: 0.00016156700439751148 +│ │ ├── duration: 0.00013629195746034384 │ │ └── outcome: passed │ └── - │ ├── nodeid: tests/test_string_utils.py::test_keyboard_interrupt_direct @@ -2891,7 +2891,7 @@ │ │ ├── slic │ │ └── │ └── setup -│ ├── duration: 0.00013485201634466648 +│ ├── duration: 0.00011638796422630548 │ └── outcome: passed └── warnings └── - diff --git a/ci-reports/markdown/pytest-report.json b/ci-reports/markdown/pytest-report.json index 8b08c57d..f13c7343 100644 --- a/ci-reports/markdown/pytest-report.json +++ b/ci-reports/markdown/pytest-report.json @@ -1 +1 @@ -{"created": 1752791186.7075896, "duration": 0.8962745666503906, "exitcode": 2, "root": "/workspace/tligui_y/slic", "environment": {}, "summary": {"passed": 36, "failed": 32, "xfailed": 2, "skipped": 1, "error": 1, "total": 72, "collected": 72}, "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::TestDynamic", "outcome": "passed", "result": [{"nodeid": "tests/test_param.py::TestDynamic::test_sum_positive", "type": "Function", "lineno": 70}]}, {"nodeid": "tests/test_param.py", "outcome": "passed", "result": [{"nodeid": "tests/test_param.py::test_basic_ids[one]", "type": "Function", "lineno": 3}, {"nodeid": "tests/test_param.py::test_basic_ids[two]", "type": "Function", "lineno": 3}, {"nodeid": "tests/test_param.py::test_with_reason_and_marks[ten]", "type": "Function", "lineno": 11}, {"nodeid": "tests/test_param.py::test_with_reason_and_marks[twenty]", "type": "Function", "lineno": 11}, {"nodeid": "tests/test_param.py::test_multiple_positional_args[1-2]", "type": "Function", "lineno": 19}, {"nodeid": "tests/test_param.py::test_multiple_positional_args[3-4]", "type": "Function", "lineno": 19}, {"nodeid": "tests/test_param.py::test_non_literal_with_id[custom-obj]", "type": "Function", "lineno": 27}, {"nodeid": "tests/test_param.py::test_timedistance_v1[a0-b0-expected0]", "type": "Function", "lineno": 40}, {"nodeid": "tests/test_param.py::test_timedistance_v1[a1-b1-expected1]", "type": "Function", "lineno": 40}, {"nodeid": "tests/test_param.py::TestDynamic", "type": "Class"}, {"nodeid": "tests/test_param.py::test_dynamic[ten]", "type": "Function", "lineno": 78}, {"nodeid": "tests/test_param.py::test_dynamic[twenty]", "type": "Function", "lineno": 78}, {"nodeid": "tests/test_param.py::test_dynamic[thirty]", "type": "Function", "lineno": 78}, {"nodeid": "tests/test_param.py::test_element_type[\\U0001f525]", "type": "Function", "lineno": 87}, {"nodeid": "tests/test_param.py::test_element_type[\\U0001f4a7]", "type": "Function", "lineno": 87}, {"nodeid": "tests/test_param.py::test_element_type[\\U0001f30d]", "type": "Function", "lineno": 87}, {"nodeid": "tests/test_param.py::test_combination[a-1]", "type": "Function", "lineno": 90}, {"nodeid": "tests/test_param.py::test_combination[a-2]", "type": "Function", "lineno": 90}, {"nodeid": "tests/test_param.py::test_combination[b-1]", "type": "Function", "lineno": 90}, {"nodeid": "tests/test_param.py::test_combination[b-2]", "type": "Function", "lineno": 90}, {"nodeid": "tests/test_param.py::test_indirect_fixture[1]", "type": "Function", "lineno": 100}, {"nodeid": "tests/test_param.py::test_indirect_fixture[2]", "type": "Function", "lineno": 100}, {"nodeid": "tests/test_param.py::test_addition", "type": "Function", "lineno": 104}]}, {"nodeid": "tests/test_string_utils.py", "outcome": "passed", "result": [{"nodeid": "tests/test_string_utils.py::test_uppercase_normal", "type": "Function", "lineno": 9}, {"nodeid": "tests/test_string_utils.py::test_uppercase_type_error", "type": "Function", "lineno": 13}, {"nodeid": "tests/test_string_utils.py::test_reverse_string", "type": "Function", "lineno": 17}, {"nodeid": "tests/test_string_utils.py::test_warning_emit", "type": "Function", "lineno": 21}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_error", "type": "Function", "lineno": 25}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_surrogateescape", "type": "Function", "lineno": 29}, {"nodeid": "tests/test_string_utils.py::test_import_warning", "type": "Function", "lineno": 33}, {"nodeid": "tests/test_string_utils.py::test_xfail_uppercase_digits", "type": "Function", "lineno": 37}, {"nodeid": "tests/test_string_utils.py::test_keyboard_interrupt_direct", "type": "Function", "lineno": 49}]}, {"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.004306296003051102, "outcome": "passed"}, "call": {"duration": 0.000571946962736547, "outcome": "passed"}, "teardown": {"duration": 0.00029698002617806196, "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.0006139889592304826, "outcome": "passed"}, "call": {"duration": 0.00035124504938721657, "outcome": "passed"}, "teardown": {"duration": 0.00016759790014475584, "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.00012574007268995047, "outcome": "passed"}, "call": {"duration": 0.00021748803555965424, "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.00023570703342556953, "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.00015622703358530998, "outcome": "passed"}, "call": {"duration": 0.00022247503511607647, "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.000229722005315125, "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.0002890599425882101, "outcome": "passed"}, "call": {"duration": 0.00021123397164046764, "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 0x7fae6028ffd0>\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.00033454701770097017, "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.00031896703876554966, "outcome": "passed"}, "call": {"duration": 0.004306557006202638, "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 0x7fae602b2220>\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.0003688819706439972, "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.00015604693908244371, "outcome": "passed"}, "call": {"duration": 0.00020421610679477453, "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.0002443010453134775, "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.0002920050173997879, "outcome": "passed"}, "call": {"duration": 0.0002279150066897273, "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 0x7fae603f07f0>\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.00028776098042726517, "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.000790423946455121, "outcome": "passed"}, "call": {"duration": 0.0016696290113031864, "outcome": "passed"}, "teardown": {"duration": 0.00020388595294207335, "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.00014310400001704693, "outcome": "passed"}, "call": {"duration": 0.00021585507784038782, "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.0001964949769899249, "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.0002285620430484414, "outcome": "passed"}, "call": {"duration": 0.00026626104954630136, "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.0003435349790379405, "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.00024598208256065845, "outcome": "passed"}, "call": {"duration": 0.00030592805705964565, "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.000351533992215991, "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.0006266889395192266, "outcome": "passed"}, "call": {"duration": 0.0003135770093649626, "outcome": "passed"}, "teardown": {"duration": 0.00021815195214003325, "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.00031828798819333315, "outcome": "passed"}, "call": {"duration": 0.00015017902478575706, "outcome": "passed"}, "teardown": {"duration": 0.00018608698155730963, "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.0002867189468815923, "outcome": "passed"}, "call": {"duration": 0.00014246301725506783, "outcome": "passed"}, "teardown": {"duration": 0.0001411490375176072, "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.00025434407871216536, "outcome": "passed"}, "call": {"duration": 0.00014103809371590614, "outcome": "passed"}, "teardown": {"duration": 0.00014201703015714884, "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.0002622130559757352, "outcome": "passed"}, "call": {"duration": 0.00015429197810590267, "outcome": "passed"}, "teardown": {"duration": 0.0001656960230320692, "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.00025275396183133125, "outcome": "passed"}, "call": {"duration": 0.00013588101137429476, "outcome": "passed"}, "teardown": {"duration": 0.0001452550059184432, "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.00026378489565104246, "outcome": "passed"}, "call": {"duration": 0.00013017805758863688, "outcome": "passed"}, "teardown": {"duration": 0.00013587402645498514, "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.00025852699764072895, "outcome": "passed"}, "call": {"duration": 0.00013113906607031822, "outcome": "passed"}, "teardown": {"duration": 0.00014550902415066957, "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.0001164870336651802, "outcome": "passed"}, "call": {"duration": 0.000529204960912466, "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.0001749310176819563, "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.00012580794282257557, "outcome": "passed"}, "call": {"duration": 0.0001714410027489066, "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.00017552892677485943, "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.00016228994354605675, "outcome": "passed"}, "call": {"duration": 0.00031209690496325493, "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.00017384195234626532, "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.000138917937874794, "outcome": "passed"}, "call": {"duration": 0.00017516897059977055, "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.000181674025952816, "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.00013709708582609892, "outcome": "passed"}, "call": {"duration": 0.0001730889780446887, "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.00017778691835701466, "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.00014070607721805573, "outcome": "passed"}, "call": {"duration": 0.0001705199247226119, "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.00017727899830788374, "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.00014782603830099106, "outcome": "passed"}, "call": {"duration": 0.00130878493655473, "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.00026467000134289265, "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.0001670120982453227, "outcome": "passed"}, "call": {"duration": 0.00017793197184801102, "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.00025685690343379974, "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.00014658109284937382, "outcome": "passed"}, "call": {"duration": 0.00019527401309460402, "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.00022860197350382805, "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.00014049606397747993, "outcome": "passed"}, "call": {"duration": 0.00017635896801948547, "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.00020224496256560087, "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.00013670395128428936, "outcome": "passed"}, "call": {"duration": 0.0001706910552456975, "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.00020355090964585543, "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.0001392109552398324, "outcome": "passed"}, "call": {"duration": 0.0001671910285949707, "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.0001798539888113737, "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.00014726503286510706, "outcome": "passed"}, "call": {"duration": 0.00016783899627625942, "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.00018462399020791054, "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.0001389459939673543, "outcome": "passed"}, "call": {"duration": 0.00017475895583629608, "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 0x7fae6028a160>\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.0003095419378951192, "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.0001769110094755888, "outcome": "passed"}, "call": {"duration": 0.00020568410400301218, "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.00023662694729864597, "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.0002019780222326517, "outcome": "passed"}, "call": {"duration": 0.00018902705051004887, "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.00024386902805417776, "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.00014441402163356543, "outcome": "passed"}, "call": {"duration": 0.00017439201474189758, "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.00022690696641802788, "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.00014154601376503706, "outcome": "passed"}, "call": {"duration": 0.0001765410415828228, "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.00022815202828496695, "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.00014002597890794277, "outcome": "passed"}, "call": {"duration": 0.00017895095515996218, "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.00025391695089638233, "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.00015680002979934216, "outcome": "passed"}, "call": {"duration": 0.0005429580342024565, "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.0002993399975821376, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_basic_ids[one]", "lineno": 3, "outcome": "passed", "keywords": ["test_basic_ids[one]", "parametrize", "pytestmark", "one", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0003136700252071023, "outcome": "passed"}, "call": {"duration": 0.00016707798931747675, "outcome": "passed"}, "teardown": {"duration": 0.00017272902186959982, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_basic_ids[two]", "lineno": 3, "outcome": "passed", "keywords": ["test_basic_ids[two]", "parametrize", "pytestmark", "two", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00029526709113270044, "outcome": "passed"}, "call": {"duration": 0.00017044006381183863, "outcome": "passed"}, "teardown": {"duration": 0.0001502669183537364, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_with_reason_and_marks[ten]", "lineno": 11, "outcome": "passed", "keywords": ["test_with_reason_and_marks[ten]", "parametrize", "pytestmark", "ten", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00020872498862445354, "outcome": "passed"}, "call": {"duration": 0.00022565294057130814, "outcome": "passed"}, "teardown": {"duration": 0.0002101990394294262, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_with_reason_and_marks[twenty]", "lineno": 11, "outcome": "skipped", "keywords": ["test_with_reason_and_marks[twenty]", "parametrize", "skip", "pytestmark", "twenty", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0003702279645949602, "outcome": "skipped", "longrepr": "('/workspace/tligui_y/slic/tests/test_param.py', 12, 'Skipped: nope')"}, "teardown": {"duration": 0.0001295830588787794, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_multiple_positional_args[1-2]", "lineno": 19, "outcome": "passed", "keywords": ["test_multiple_positional_args[1-2]", "parametrize", "pytestmark", "1-2", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.000269743031822145, "outcome": "passed"}, "call": {"duration": 0.0001429729163646698, "outcome": "passed"}, "teardown": {"duration": 0.00013475806917995214, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_multiple_positional_args[3-4]", "lineno": 19, "outcome": "passed", "keywords": ["test_multiple_positional_args[3-4]", "parametrize", "pytestmark", "3-4", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00021690200082957745, "outcome": "passed"}, "call": {"duration": 0.00013456202577799559, "outcome": "passed"}, "teardown": {"duration": 0.00014851789455860853, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_non_literal_with_id[custom-obj]", "lineno": 27, "outcome": "passed", "keywords": ["test_non_literal_with_id[custom-obj]", "parametrize", "pytestmark", "custom-obj", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00017125706654042006, "outcome": "passed"}, "call": {"duration": 0.00012643402442336082, "outcome": "passed"}, "teardown": {"duration": 0.0001131939934566617, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_timedistance_v1[a0-b0-expected0]", "lineno": 40, "outcome": "passed", "keywords": ["test_timedistance_v1[a0-b0-expected0]", "parametrize", "pytestmark", "a0-b0-expected0", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00026055704802274704, "outcome": "passed"}, "call": {"duration": 0.00013210391625761986, "outcome": "passed"}, "teardown": {"duration": 0.00014868495054543018, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_timedistance_v1[a1-b1-expected1]", "lineno": 40, "outcome": "passed", "keywords": ["test_timedistance_v1[a1-b1-expected1]", "parametrize", "pytestmark", "a1-b1-expected1", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0002443230478093028, "outcome": "passed"}, "call": {"duration": 0.0001372970873489976, "outcome": "passed"}, "teardown": {"duration": 0.00015910109505057335, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::TestDynamic::test_sum_positive", "lineno": 70, "outcome": "error", "keywords": ["test_sum_positive", "TestDynamic", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0001580159878358245, "outcome": "failed", "longrepr": "file /workspace/tligui_y/slic/tests/test_param.py, line 71\n def test_sum_positive(self, x, y):\nE fixture 'x' not found\n> available fixtures: cache, capfd, capfdbinary, caplog, capsys, capsysbinary, complex_setup, cov, doctest_namespace, element, extra, extras, include_metadata_in_junit_xml, json_metadata, metadata, monkeypatch, no_cover, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory\n> use 'pytest --fixtures [testpath]' for help on them.\n\n/workspace/tligui_y/slic/tests/test_param.py:71"}, "teardown": {"duration": 0.00013017805758863688, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_dynamic[ten]", "lineno": 78, "outcome": "passed", "keywords": ["test_dynamic[ten]", "ten", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0002069480251520872, "outcome": "passed"}, "call": {"duration": 0.00013452803250402212, "outcome": "passed"}, "teardown": {"duration": 0.00011848495341837406, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_dynamic[twenty]", "lineno": 78, "outcome": "passed", "keywords": ["test_dynamic[twenty]", "twenty", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00021362106781452894, "outcome": "passed"}, "call": {"duration": 0.0001467599067837, "outcome": "passed"}, "teardown": {"duration": 0.00012570701073855162, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_dynamic[thirty]", "lineno": 78, "outcome": "passed", "keywords": ["test_dynamic[thirty]", "thirty", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00017798191402107477, "outcome": "passed"}, "call": {"duration": 0.00012322899419814348, "outcome": "passed"}, "teardown": {"duration": 0.00011093297507613897, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_element_type[\\U0001f525]", "lineno": 87, "outcome": "passed", "keywords": ["test_element_type[\\U0001f525]", "\\U0001f525", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00017261295579373837, "outcome": "passed"}, "call": {"duration": 0.00012608605902642012, "outcome": "passed"}, "teardown": {"duration": 0.00011374696623533964, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_element_type[\\U0001f4a7]", "lineno": 87, "outcome": "passed", "keywords": ["test_element_type[\\U0001f4a7]", "\\U0001f4a7", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00016028794925659895, "outcome": "passed"}, "call": {"duration": 0.00014094100333750248, "outcome": "passed"}, "teardown": {"duration": 0.00011498399544507265, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_element_type[\\U0001f30d]", "lineno": 87, "outcome": "passed", "keywords": ["test_element_type[\\U0001f30d]", "\\U0001f30d", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0002072829520329833, "outcome": "passed"}, "call": {"duration": 0.00014872406609356403, "outcome": "passed"}, "teardown": {"duration": 0.00011872604954987764, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_combination[a-1]", "lineno": 90, "outcome": "passed", "keywords": ["test_combination[a-1]", "parametrize", "pytestmark", "a-1", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00021455308888107538, "outcome": "passed"}, "call": {"duration": 0.00014168606139719486, "outcome": "passed"}, "teardown": {"duration": 0.00012749095913022757, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_combination[a-2]", "lineno": 90, "outcome": "passed", "keywords": ["test_combination[a-2]", "parametrize", "pytestmark", "a-2", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00019941292703151703, "outcome": "passed"}, "call": {"duration": 0.0001357640139758587, "outcome": "passed"}, "teardown": {"duration": 0.00013084406964480877, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_combination[b-1]", "lineno": 90, "outcome": "passed", "keywords": ["test_combination[b-1]", "parametrize", "pytestmark", "b-1", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00024122896138578653, "outcome": "passed"}, "call": {"duration": 0.00014157895930111408, "outcome": "passed"}, "teardown": {"duration": 0.00012688792776316404, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_combination[b-2]", "lineno": 90, "outcome": "passed", "keywords": ["test_combination[b-2]", "parametrize", "pytestmark", "b-2", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00021152407862246037, "outcome": "passed"}, "call": {"duration": 0.00014219689182937145, "outcome": "passed"}, "teardown": {"duration": 0.00012789294123649597, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_indirect_fixture[1]", "lineno": 100, "outcome": "passed", "keywords": ["test_indirect_fixture[1]", "parametrize", "pytestmark", "1", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0001611530315130949, "outcome": "passed"}, "call": {"duration": 0.00013298005796968937, "outcome": "passed"}, "teardown": {"duration": 0.00011068396270275116, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_indirect_fixture[2]", "lineno": 100, "outcome": "passed", "keywords": ["test_indirect_fixture[2]", "parametrize", "pytestmark", "2", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0001679400447756052, "outcome": "passed"}, "call": {"duration": 0.00012880505528301, "outcome": "passed"}, "teardown": {"duration": 0.00011504907160997391, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_addition", "lineno": 104, "outcome": "failed", "keywords": ["test_addition", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00010142195969820023, "outcome": "passed"}, "call": {"duration": 0.0003700490342453122, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_param.py", "lineno": 107, "message": "NameError: name 'addition' is not defined"}, "traceback": [{"path": "tests/test_param.py", "lineno": 107, "message": "NameError"}], "longrepr": "a = 5, b = 5, expected = 10\n\n def test_addition(a = 5, b = 5, expected = 10):\n # Has to pass\n> assert addition(a, b) == expected\nE NameError: name 'addition' is not defined\n\ntests/test_param.py:107: NameError"}, "teardown": {"duration": 0.00016236398369073868, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_uppercase_normal", "lineno": 9, "outcome": "passed", "keywords": ["test_uppercase_normal", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00013635295908898115, "outcome": "passed"}, "call": {"duration": 0.00015654903836548328, "outcome": "passed"}, "teardown": {"duration": 0.00011012493632733822, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_uppercase_type_error", "lineno": 13, "outcome": "failed", "keywords": ["test_uppercase_type_error", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011388503480702639, "outcome": "passed"}, "call": {"duration": 0.00015681900549679995, "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": 16, "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:16: \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.0001603430137038231, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_reverse_string", "lineno": 17, "outcome": "passed", "keywords": ["test_reverse_string", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00014302402269095182, "outcome": "passed"}, "call": {"duration": 0.00014991499483585358, "outcome": "passed"}, "teardown": {"duration": 0.00010383105836808681, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_warning_emit", "lineno": 21, "outcome": "passed", "keywords": ["test_warning_emit", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00010647089220583439, "outcome": "passed"}, "call": {"duration": 0.00014862604439258575, "outcome": "passed"}, "teardown": {"duration": 9.751599282026291e-05, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_error", "lineno": 25, "outcome": "failed", "keywords": ["test_unicode_decode_error", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011520693078637123, "outcome": "passed"}, "call": {"duration": 0.00015714101027697325, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 28, "message": "UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 28, "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:28: UnicodeDecodeError"}, "teardown": {"duration": 0.0001567919971421361, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_surrogateescape", "lineno": 29, "outcome": "failed", "keywords": ["test_unicode_decode_surrogateescape", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00013649591710418463, "outcome": "passed"}, "call": {"duration": 0.0001611219486221671, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 32, "message": "UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 32, "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:32: UnicodeDecodeError"}, "teardown": {"duration": 0.0001575159840285778, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_import_warning", "lineno": 33, "outcome": "passed", "keywords": ["test_import_warning", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012547499500215054, "outcome": "passed"}, "call": {"duration": 0.00014379899948835373, "outcome": "passed"}, "teardown": {"duration": 0.00010347901843488216, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_xfail_uppercase_digits", "lineno": 37, "outcome": "xfailed", "keywords": ["test_xfail_uppercase_digits", "xfail", "pytestmark", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.0001203090650960803, "outcome": "passed"}, "call": {"duration": 0.0006781549891456962, "outcome": "skipped", "crash": {"path": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 41, "message": "AssertionError: assert 'ABC123' == 'ABC1234'\n \n - ABC1234\n ? -\n + ABC123"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 41, "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:41: AssertionError"}, "teardown": {"duration": 0.00016156700439751148, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_keyboard_interrupt_direct", "lineno": 49, "outcome": "passed", "keywords": ["test_keyboard_interrupt_direct", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00013485201634466648, "outcome": "passed"}}], "warnings": [{"message": "Test warning", "category": "UserWarning", "when": "runtest", "filename": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 24}]} \ No newline at end of file +{"created": 1752791376.1234715, "duration": 0.7349338531494141, "exitcode": 2, "root": "/workspace/tligui_y/slic", "environment": {}, "summary": {"passed": 36, "failed": 32, "xfailed": 2, "skipped": 1, "error": 1, "total": 72, "collected": 72}, "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::TestDynamic", "outcome": "passed", "result": [{"nodeid": "tests/test_param.py::TestDynamic::test_sum_positive", "type": "Function", "lineno": 70}]}, {"nodeid": "tests/test_param.py", "outcome": "passed", "result": [{"nodeid": "tests/test_param.py::test_basic_ids[one]", "type": "Function", "lineno": 3}, {"nodeid": "tests/test_param.py::test_basic_ids[two]", "type": "Function", "lineno": 3}, {"nodeid": "tests/test_param.py::test_with_reason_and_marks[ten]", "type": "Function", "lineno": 11}, {"nodeid": "tests/test_param.py::test_with_reason_and_marks[twenty]", "type": "Function", "lineno": 11}, {"nodeid": "tests/test_param.py::test_multiple_positional_args[1-2]", "type": "Function", "lineno": 19}, {"nodeid": "tests/test_param.py::test_multiple_positional_args[3-4]", "type": "Function", "lineno": 19}, {"nodeid": "tests/test_param.py::test_non_literal_with_id[custom-obj]", "type": "Function", "lineno": 27}, {"nodeid": "tests/test_param.py::test_timedistance_v1[a0-b0-expected0]", "type": "Function", "lineno": 40}, {"nodeid": "tests/test_param.py::test_timedistance_v1[a1-b1-expected1]", "type": "Function", "lineno": 40}, {"nodeid": "tests/test_param.py::TestDynamic", "type": "Class"}, {"nodeid": "tests/test_param.py::test_dynamic[ten]", "type": "Function", "lineno": 78}, {"nodeid": "tests/test_param.py::test_dynamic[twenty]", "type": "Function", "lineno": 78}, {"nodeid": "tests/test_param.py::test_dynamic[thirty]", "type": "Function", "lineno": 78}, {"nodeid": "tests/test_param.py::test_element_type[\\U0001f525]", "type": "Function", "lineno": 87}, {"nodeid": "tests/test_param.py::test_element_type[\\U0001f4a7]", "type": "Function", "lineno": 87}, {"nodeid": "tests/test_param.py::test_element_type[\\U0001f30d]", "type": "Function", "lineno": 87}, {"nodeid": "tests/test_param.py::test_combination[a-1]", "type": "Function", "lineno": 90}, {"nodeid": "tests/test_param.py::test_combination[a-2]", "type": "Function", "lineno": 90}, {"nodeid": "tests/test_param.py::test_combination[b-1]", "type": "Function", "lineno": 90}, {"nodeid": "tests/test_param.py::test_combination[b-2]", "type": "Function", "lineno": 90}, {"nodeid": "tests/test_param.py::test_indirect_fixture[1]", "type": "Function", "lineno": 100}, {"nodeid": "tests/test_param.py::test_indirect_fixture[2]", "type": "Function", "lineno": 100}, {"nodeid": "tests/test_param.py::test_addition", "type": "Function", "lineno": 104}]}, {"nodeid": "tests/test_string_utils.py", "outcome": "passed", "result": [{"nodeid": "tests/test_string_utils.py::test_uppercase_normal", "type": "Function", "lineno": 9}, {"nodeid": "tests/test_string_utils.py::test_uppercase_type_error", "type": "Function", "lineno": 13}, {"nodeid": "tests/test_string_utils.py::test_reverse_string", "type": "Function", "lineno": 17}, {"nodeid": "tests/test_string_utils.py::test_warning_emit", "type": "Function", "lineno": 21}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_error", "type": "Function", "lineno": 25}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_surrogateescape", "type": "Function", "lineno": 29}, {"nodeid": "tests/test_string_utils.py::test_import_warning", "type": "Function", "lineno": 33}, {"nodeid": "tests/test_string_utils.py::test_xfail_uppercase_digits", "type": "Function", "lineno": 37}, {"nodeid": "tests/test_string_utils.py::test_keyboard_interrupt_direct", "type": "Function", "lineno": 49}]}, {"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.003183303982950747, "outcome": "passed"}, "call": {"duration": 0.000520461006090045, "outcome": "passed"}, "teardown": {"duration": 0.0002535360399633646, "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.0004358310252428055, "outcome": "passed"}, "call": {"duration": 0.00028906704392284155, "outcome": "passed"}, "teardown": {"duration": 0.00013553700409829617, "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.00011880102101713419, "outcome": "passed"}, "call": {"duration": 0.0001596389338374138, "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.00013844703789800406, "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.00015413400251418352, "outcome": "passed"}, "call": {"duration": 0.00018551689572632313, "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.00013960304204374552, "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.0002196000423282385, "outcome": "passed"}, "call": {"duration": 0.00018055399414151907, "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 0x7fc8db861b20>\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.00016889104153960943, "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.00019034603610634804, "outcome": "passed"}, "call": {"duration": 0.003268423955887556, "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 0x7fc8dbe4e940>\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.0002619749866425991, "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.00013766600750386715, "outcome": "passed"}, "call": {"duration": 0.0001751220552250743, "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.00015921995509415865, "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.00022113800514489412, "outcome": "passed"}, "call": {"duration": 0.00018846907187253237, "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 0x7fc8dbb190d0>\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.00016740697901695967, "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.0006233400199562311, "outcome": "passed"}, "call": {"duration": 0.0008126039756461978, "outcome": "passed"}, "teardown": {"duration": 0.00013969396241009235, "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.00013322499580681324, "outcome": "passed"}, "call": {"duration": 0.00016511103603988886, "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.00013849197421222925, "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.00012896500993520021, "outcome": "passed"}, "call": {"duration": 0.0001528519205749035, "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.00014043995179235935, "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.00011897191870957613, "outcome": "passed"}, "call": {"duration": 0.00015244295354932547, "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.00013583304826170206, "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.0002830910962074995, "outcome": "passed"}, "call": {"duration": 0.00014288700185716152, "outcome": "passed"}, "teardown": {"duration": 0.00014877808280289173, "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.00025408295914530754, "outcome": "passed"}, "call": {"duration": 0.0001446719979867339, "outcome": "passed"}, "teardown": {"duration": 0.0001369500532746315, "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.00024076597765088081, "outcome": "passed"}, "call": {"duration": 0.0001389490207657218, "outcome": "passed"}, "teardown": {"duration": 0.0001406229566782713, "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.0002468959428369999, "outcome": "passed"}, "call": {"duration": 0.00014104600995779037, "outcome": "passed"}, "teardown": {"duration": 0.00013901700731366873, "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.00024020206183195114, "outcome": "passed"}, "call": {"duration": 0.00013102998491376638, "outcome": "passed"}, "teardown": {"duration": 0.0001361500471830368, "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.0002415910130366683, "outcome": "passed"}, "call": {"duration": 0.0001301660668104887, "outcome": "passed"}, "teardown": {"duration": 0.0001317569985985756, "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.0002534240484237671, "outcome": "passed"}, "call": {"duration": 0.00013181997928768396, "outcome": "passed"}, "teardown": {"duration": 0.00013589998707175255, "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.00023517408408224583, "outcome": "passed"}, "call": {"duration": 0.00013340706937015057, "outcome": "passed"}, "teardown": {"duration": 0.00013555504847317934, "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.00010374805424362421, "outcome": "passed"}, "call": {"duration": 0.00039142800960689783, "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.00013773201499134302, "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.00011692405678331852, "outcome": "passed"}, "call": {"duration": 0.0001713130623102188, "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.00014083797577768564, "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.00013090099673718214, "outcome": "passed"}, "call": {"duration": 0.00025955901946872473, "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.00013651500921696424, "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.00011756899766623974, "outcome": "passed"}, "call": {"duration": 0.00014687702059745789, "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.00013669300824403763, "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.00012419698759913445, "outcome": "passed"}, "call": {"duration": 0.00014996598474681377, "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.00013615295756608248, "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.000122333993203938, "outcome": "passed"}, "call": {"duration": 0.00014753395225852728, "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.00013956998009234667, "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.00011762604117393494, "outcome": "passed"}, "call": {"duration": 0.0007552830502390862, "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.00013795995619148016, "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.00013496004976332188, "outcome": "passed"}, "call": {"duration": 0.00014908495359122753, "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.00015191594138741493, "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.00012572004925459623, "outcome": "passed"}, "call": {"duration": 0.00015637197066098452, "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.0001491669099777937, "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.0001179249957203865, "outcome": "passed"}, "call": {"duration": 0.00015133898705244064, "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.00013880501501262188, "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.00011816993355751038, "outcome": "passed"}, "call": {"duration": 0.00016017805319279432, "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.00013587204739451408, "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.00012269802391529083, "outcome": "passed"}, "call": {"duration": 0.00014939799439162016, "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.00013754400424659252, "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.00012225192040205002, "outcome": "passed"}, "call": {"duration": 0.00015238404739648104, "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.00013502291403710842, "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.00013388902880251408, "outcome": "passed"}, "call": {"duration": 0.0001541139790788293, "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 0x7fc8dbdf9700>\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.00023151002824306488, "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.00013180309906601906, "outcome": "passed"}, "call": {"duration": 0.00016179599333554506, "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.00016816100105643272, "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.0001299940049648285, "outcome": "passed"}, "call": {"duration": 0.00016754399985074997, "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.0001430849079042673, "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.0001225150190293789, "outcome": "passed"}, "call": {"duration": 0.00015958503354340792, "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.00013937789481133223, "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.00012046599294990301, "outcome": "passed"}, "call": {"duration": 0.0001525909174233675, "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.0001400840701535344, "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.00011761393398046494, "outcome": "passed"}, "call": {"duration": 0.0001518189674243331, "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.00013587891589850187, "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.00014413404278457165, "outcome": "passed"}, "call": {"duration": 0.00044747802894562483, "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.00014360796194523573, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_basic_ids[one]", "lineno": 3, "outcome": "passed", "keywords": ["test_basic_ids[one]", "parametrize", "pytestmark", "one", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00022683595307171345, "outcome": "passed"}, "call": {"duration": 0.00013785692863166332, "outcome": "passed"}, "teardown": {"duration": 0.0001213139621540904, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_basic_ids[two]", "lineno": 3, "outcome": "passed", "keywords": ["test_basic_ids[two]", "parametrize", "pytestmark", "two", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0001855340087786317, "outcome": "passed"}, "call": {"duration": 0.00012989796232432127, "outcome": "passed"}, "teardown": {"duration": 0.00011642801109701395, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_with_reason_and_marks[ten]", "lineno": 11, "outcome": "passed", "keywords": ["test_with_reason_and_marks[ten]", "parametrize", "pytestmark", "ten", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00019500497728586197, "outcome": "passed"}, "call": {"duration": 0.00013293104711920023, "outcome": "passed"}, "teardown": {"duration": 0.00011387607082724571, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_with_reason_and_marks[twenty]", "lineno": 11, "outcome": "skipped", "keywords": ["test_with_reason_and_marks[twenty]", "parametrize", "skip", "pytestmark", "twenty", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00021416402887552977, "outcome": "skipped", "longrepr": "('/workspace/tligui_y/slic/tests/test_param.py', 12, 'Skipped: nope')"}, "teardown": {"duration": 0.00011537503451108932, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_multiple_positional_args[1-2]", "lineno": 19, "outcome": "passed", "keywords": ["test_multiple_positional_args[1-2]", "parametrize", "pytestmark", "1-2", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00023485510610044003, "outcome": "passed"}, "call": {"duration": 0.0001301289303228259, "outcome": "passed"}, "teardown": {"duration": 0.0001444709487259388, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_multiple_positional_args[3-4]", "lineno": 19, "outcome": "passed", "keywords": ["test_multiple_positional_args[3-4]", "parametrize", "pytestmark", "3-4", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0002185039920732379, "outcome": "passed"}, "call": {"duration": 0.00012918002903461456, "outcome": "passed"}, "teardown": {"duration": 0.00012547406367957592, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_non_literal_with_id[custom-obj]", "lineno": 27, "outcome": "passed", "keywords": ["test_non_literal_with_id[custom-obj]", "parametrize", "pytestmark", "custom-obj", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00016074697487056255, "outcome": "passed"}, "call": {"duration": 0.00012187391985207796, "outcome": "passed"}, "teardown": {"duration": 0.00012184493243694305, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_timedistance_v1[a0-b0-expected0]", "lineno": 40, "outcome": "passed", "keywords": ["test_timedistance_v1[a0-b0-expected0]", "parametrize", "pytestmark", "a0-b0-expected0", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0003144890069961548, "outcome": "passed"}, "call": {"duration": 0.00013600208330899477, "outcome": "passed"}, "teardown": {"duration": 0.00013658800162374973, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_timedistance_v1[a1-b1-expected1]", "lineno": 40, "outcome": "passed", "keywords": ["test_timedistance_v1[a1-b1-expected1]", "parametrize", "pytestmark", "a1-b1-expected1", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00025163101963698864, "outcome": "passed"}, "call": {"duration": 0.00013094593305140734, "outcome": "passed"}, "teardown": {"duration": 0.00015740597154945135, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::TestDynamic::test_sum_positive", "lineno": 70, "outcome": "error", "keywords": ["test_sum_positive", "TestDynamic", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.000137584051117301, "outcome": "failed", "longrepr": "file /workspace/tligui_y/slic/tests/test_param.py, line 71\n def test_sum_positive(self, x, y):\nE fixture 'x' not found\n> available fixtures: cache, capfd, capfdbinary, caplog, capsys, capsysbinary, complex_setup, cov, doctest_namespace, element, extra, extras, include_metadata_in_junit_xml, json_metadata, metadata, monkeypatch, no_cover, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory\n> use 'pytest --fixtures [testpath]' for help on them.\n\n/workspace/tligui_y/slic/tests/test_param.py:71"}, "teardown": {"duration": 0.00013303104788064957, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_dynamic[ten]", "lineno": 78, "outcome": "passed", "keywords": ["test_dynamic[ten]", "ten", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0001827609958127141, "outcome": "passed"}, "call": {"duration": 0.00014138605911284685, "outcome": "passed"}, "teardown": {"duration": 0.00011861801613122225, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_dynamic[twenty]", "lineno": 78, "outcome": "passed", "keywords": ["test_dynamic[twenty]", "twenty", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00017238897271454334, "outcome": "passed"}, "call": {"duration": 0.00012772902846336365, "outcome": "passed"}, "teardown": {"duration": 0.00011693499982357025, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_dynamic[thirty]", "lineno": 78, "outcome": "passed", "keywords": ["test_dynamic[thirty]", "thirty", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00016038795001804829, "outcome": "passed"}, "call": {"duration": 0.0001225980231538415, "outcome": "passed"}, "teardown": {"duration": 0.00011477002408355474, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_element_type[\\U0001f525]", "lineno": 87, "outcome": "passed", "keywords": ["test_element_type[\\U0001f525]", "\\U0001f525", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0001698529813438654, "outcome": "passed"}, "call": {"duration": 0.0001259329728782177, "outcome": "passed"}, "teardown": {"duration": 0.0001232579816132784, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_element_type[\\U0001f4a7]", "lineno": 87, "outcome": "passed", "keywords": ["test_element_type[\\U0001f4a7]", "\\U0001f4a7", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00015953800175338984, "outcome": "passed"}, "call": {"duration": 0.00012113794218748808, "outcome": "passed"}, "teardown": {"duration": 0.00011762604117393494, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_element_type[\\U0001f30d]", "lineno": 87, "outcome": "passed", "keywords": ["test_element_type[\\U0001f30d]", "\\U0001f30d", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0001710359938442707, "outcome": "passed"}, "call": {"duration": 0.00012369605246931314, "outcome": "passed"}, "teardown": {"duration": 0.00011078105308115482, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_combination[a-1]", "lineno": 90, "outcome": "passed", "keywords": ["test_combination[a-1]", "parametrize", "pytestmark", "a-1", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00020548899192363024, "outcome": "passed"}, "call": {"duration": 0.0001242560101673007, "outcome": "passed"}, "teardown": {"duration": 0.0001299300929531455, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_combination[a-2]", "lineno": 90, "outcome": "passed", "keywords": ["test_combination[a-2]", "parametrize", "pytestmark", "a-2", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00020911404862999916, "outcome": "passed"}, "call": {"duration": 0.00012463994789868593, "outcome": "passed"}, "teardown": {"duration": 0.0001241409918293357, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_combination[b-1]", "lineno": 90, "outcome": "passed", "keywords": ["test_combination[b-1]", "parametrize", "pytestmark", "b-1", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0002099310513585806, "outcome": "passed"}, "call": {"duration": 0.00012690306175500154, "outcome": "passed"}, "teardown": {"duration": 0.00012475205585360527, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_combination[b-2]", "lineno": 90, "outcome": "passed", "keywords": ["test_combination[b-2]", "parametrize", "pytestmark", "b-2", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00021132698748260736, "outcome": "passed"}, "call": {"duration": 0.00012683705426752567, "outcome": "passed"}, "teardown": {"duration": 0.00012315891217440367, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_indirect_fixture[1]", "lineno": 100, "outcome": "passed", "keywords": ["test_indirect_fixture[1]", "parametrize", "pytestmark", "1", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.0003057820722460747, "outcome": "passed"}, "call": {"duration": 0.0001411809353157878, "outcome": "passed"}, "teardown": {"duration": 0.00011999893467873335, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_indirect_fixture[2]", "lineno": 100, "outcome": "passed", "keywords": ["test_indirect_fixture[2]", "parametrize", "pytestmark", "2", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00017237907741218805, "outcome": "passed"}, "call": {"duration": 0.00012540293391793966, "outcome": "passed"}, "teardown": {"duration": 0.00011429807636886835, "outcome": "passed"}}, {"nodeid": "tests/test_param.py::test_addition", "lineno": 104, "outcome": "failed", "keywords": ["test_addition", "test_param.py", "tests", "slic", ""], "setup": {"duration": 0.00011221796739846468, "outcome": "passed"}, "call": {"duration": 0.0001454079756513238, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_param.py", "lineno": 107, "message": "NameError: name 'addition' is not defined"}, "traceback": [{"path": "tests/test_param.py", "lineno": 107, "message": "NameError"}], "longrepr": "a = 5, b = 5, expected = 10\n\n def test_addition(a = 5, b = 5, expected = 10):\n # Has to pass\n> assert addition(a, b) == expected\nE NameError: name 'addition' is not defined\n\ntests/test_param.py:107: NameError"}, "teardown": {"duration": 0.00013918406330049038, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_uppercase_normal", "lineno": 9, "outcome": "passed", "keywords": ["test_uppercase_normal", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00012968597002327442, "outcome": "passed"}, "call": {"duration": 0.0001441800268366933, "outcome": "passed"}, "teardown": {"duration": 0.00010189192835241556, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_uppercase_type_error", "lineno": 13, "outcome": "failed", "keywords": ["test_uppercase_type_error", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011787901166826487, "outcome": "passed"}, "call": {"duration": 0.00014299899339675903, "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": 16, "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:16: \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.0001391819678246975, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_reverse_string", "lineno": 17, "outcome": "passed", "keywords": ["test_reverse_string", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011872604954987764, "outcome": "passed"}, "call": {"duration": 0.00013808405492454767, "outcome": "passed"}, "teardown": {"duration": 9.939505252987146e-05, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_warning_emit", "lineno": 21, "outcome": "passed", "keywords": ["test_warning_emit", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00013507402036339045, "outcome": "passed"}, "call": {"duration": 0.00014259805902838707, "outcome": "passed"}, "teardown": {"duration": 9.633193258196115e-05, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_error", "lineno": 25, "outcome": "failed", "keywords": ["test_unicode_decode_error", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011914805509150028, "outcome": "passed"}, "call": {"duration": 0.00014873396139591932, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 28, "message": "UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 28, "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:28: UnicodeDecodeError"}, "teardown": {"duration": 0.00013484398368746042, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_unicode_decode_surrogateescape", "lineno": 29, "outcome": "failed", "keywords": ["test_unicode_decode_surrogateescape", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011834397446364164, "outcome": "passed"}, "call": {"duration": 0.00019019993487745523, "outcome": "failed", "crash": {"path": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 32, "message": "UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 32, "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:32: UnicodeDecodeError"}, "teardown": {"duration": 0.00013372208923101425, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_import_warning", "lineno": 33, "outcome": "passed", "keywords": ["test_import_warning", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011590705253183842, "outcome": "passed"}, "call": {"duration": 0.00015360000543296337, "outcome": "passed"}, "teardown": {"duration": 0.00010351906530559063, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_xfail_uppercase_digits", "lineno": 37, "outcome": "xfailed", "keywords": ["test_xfail_uppercase_digits", "xfail", "pytestmark", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011555606033653021, "outcome": "passed"}, "call": {"duration": 0.0006106479559093714, "outcome": "skipped", "crash": {"path": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 41, "message": "AssertionError: assert 'ABC123' == 'ABC1234'\n \n - ABC1234\n ? -\n + ABC123"}, "traceback": [{"path": "tests/test_string_utils.py", "lineno": 41, "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:41: AssertionError"}, "teardown": {"duration": 0.00013629195746034384, "outcome": "passed"}}, {"nodeid": "tests/test_string_utils.py::test_keyboard_interrupt_direct", "lineno": 49, "outcome": "passed", "keywords": ["test_keyboard_interrupt_direct", "test_string_utils.py", "tests", "slic", ""], "setup": {"duration": 0.00011638796422630548, "outcome": "passed"}}], "warnings": [{"message": "Test warning", "category": "UserWarning", "when": "runtest", "filename": "/workspace/tligui_y/slic/tests/test_string_utils.py", "lineno": 24}]} \ No newline at end of file diff --git a/ci-reports/markdown/runtime_params.json b/ci-reports/markdown/runtime_params.json index f2798bf1..b26f51df 100644 --- a/ci-reports/markdown/runtime_params.json +++ b/ci-reports/markdown/runtime_params.json @@ -266,7 +266,7 @@ "nodeid": "tests/test_param.py::test_non_literal_with_id[custom-obj]", "callspec": { "params": { - "data": "" + "data": "" }, "id": "custom-obj" }