28 KiB
28 KiB
🧪 Test Report
Generated on 2025-07-14 13:30:18
📋 Summary
- Failed:
6 - Passed:
12 - Xfailed:
1 - Total:
19 - Collected:
36 - Total Duration:
0.399s
🔎 Tests
❌ Failed (6)
📁 test_forth_file.py
🔧 Function: `test_broken`
❌ #1
- Status: ❌
failed - Duration:
0.000230s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.0006615059683099389
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.00023003504611551762
📌 Outcome
failed
📌 Crash
path: /workspace/tligui_y/slic/tests/test_forth_file.py
lineno: 16
message: NameError: name 'want_the_test_to_fail' is not defined
📌 Traceback
path: tests/test_forth_file.py
lineno: 16
message: NameError
📌 Longrepr
def test_broken():
# simulating a broken or faulty test implementation that will cause the test to error
> want_the_test_to_fail
E NameError: name 'want_the_test_to_fail' is not defined
tests/test_forth_file.py:16: NameError
🔧 Teardown Phase
📌 Duration
0.000451117055490613
📌 Outcome
passed
🔧 Function: `test_addition_fail`
❌ #4
- Status: ❌
failed - Duration:
0.000527s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.00019014498684555292
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.0005266889929771423
📌 Outcome
failed
📌 Crash
path: /workspace/tligui_y/slic/tests/test_forth_file.py
lineno: 29
message: assert 4 == 5
+ where 4 = addition(2, 2)
📌 Traceback
path: tests/test_forth_file.py
lineno: 29
message: AssertionError
📌 Longrepr
def test_addition_fail():
# Assertion failure: expected incorrect result
> assert addition(2, 2) == 5
E assert 4 == 5
E + where 4 = addition(2, 2)
tests/test_forth_file.py:29: AssertionError
🔧 Teardown Phase
📌 Duration
0.00023831205908209085
📌 Outcome
passed
🔧 Function: `test_runtime_error`
❌ #7
- Status: ❌
failed - Duration:
0.000179s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.00018550397362560034
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.0001794749405235052
📌 Outcome
failed
📌 Crash
path: /workspace/tligui_y/slic/tests/test_forth_file.py
lineno: 43
message: RuntimeError: Forced runtime error
📌 Traceback
path: tests/test_forth_file.py
lineno: 43
message: RuntimeError
📌 Longrepr
def test_runtime_error():
# Test raises an uncaught RuntimeError
> raise RuntimeError("Forced runtime error")
E RuntimeError: Forced runtime error
tests/test_forth_file.py:43: RuntimeError
🔧 Teardown Phase
📌 Duration
0.000265370006673038
📌 Outcome
passed
🔧 Function: `test_unhandled_exception`
❌ #15
- Status: ❌
failed - Duration:
0.000172s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.00017766805831342936
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.00017234496772289276
📌 Outcome
failed
📌 Crash
path: /workspace/tligui_y/slic/tests/test_forth_file.py
lineno: 84
message: Exception: Generic unhandled exception
📌 Traceback
path: tests/test_forth_file.py
lineno: 84
message: Exception
📌 Longrepr
def test_unhandled_exception():
# Raises generic unhandled Exception
> raise Exception("Generic unhandled exception")
E Exception: Generic unhandled exception
tests/test_forth_file.py:84: Exception
🔧 Teardown Phase
📌 Duration
0.00024941598530858755
📌 Outcome
passed
🔧 Function: `test_stop_iteration_direct`
❌ #17
- Status: ❌
failed - Duration:
0.000169s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.00016876403242349625
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.0001690819626674056
📌 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 <lambda>
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():
# Directly raise StopIteration exception
> raise StopIteration()
E StopIteration
tests/test_forth_file.py:93: StopIteration
The above exception was the direct cause of the following exception:
cls = <class '_pytest.runner.CallInfo'>
func = <function call_and_report.<locals>.<lambda> at 0x7f6365b6fc10>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
@classmethod
def from_call(
cls,
func: Callable[[], TResult],
when: Literal["collect", "setup", "call", "teardown"],
reraise: type[BaseException] | tuple[type[BaseException], ...] | None = None,
) -> CallInfo[TResult]:
"""Call func, wrapping the result in a CallInfo.
:param func:
The function to call. Called without arguments.
:type func: Callable[[], _pytest.runner.TResult]
:param when:
The phase in which the function is called.
:param reraise:
Exception or exceptions that shall propagate if raised by the
function, instead of being wrapped in the CallInfo.
"""
excinfo = None
start = timing.time()
precise_start = timing.perf_counter()
try:
> result: TResult | None = func()
.pixi/envs/default/lib/python3.8/site-packages/_pytest/runner.py:341:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
.pixi/envs/default/lib/python3.8/site-packages/_pytest/runner.py:242: in <lambda>
lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise
.pixi/envs/default/lib/python3.8/site-packages/pluggy/_hooks.py:513: in __call__
return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
.pixi/envs/default/lib/python3.8/site-packages/pluggy/_manager.py:120: in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
.pixi/envs/default/lib/python3.8/site-packages/_pytest/threadexception.py:92: in pytest_runtest_call
yield from thread_exception_runtest_hook()
.pixi/envs/default/lib/python3.8/site-packages/_pytest/threadexception.py:68: in thread_exception_runtest_hook
yield
.pixi/envs/default/lib/python3.8/site-packages/_pytest/unraisableexception.py:95: in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
.pixi/envs/default/lib/python3.8/site-packages/_pytest/unraisableexception.py:70: in unraisable_exception_runtest_hook
yield
.pixi/envs/default/lib/python3.8/site-packages/_pytest/logging.py:846: in pytest_runtest_call
yield from self._runtest_for(item, "call")
.pixi/envs/default/lib/python3.8/site-packages/_pytest/logging.py:829: in _runtest_for
yield
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <CaptureManager _method='no' _global_capturing=<MultiCapture out=None err=None in_=None _state='suspended' _in_suspended=False> _capture_fixture=None>
item = <Function test_stop_iteration_direct>
@hookimpl(wrapper=True)
def pytest_runtest_call(self, item: Item) -> Generator[None]:
with self.item_capture("call", item):
> return (yield)
E RuntimeError: generator raised StopIteration
.pixi/envs/default/lib/python3.8/site-packages/_pytest/capture.py:880: RuntimeError
🔧 Teardown Phase
📌 Duration
0.000449543003924191
📌 Outcome
passed
🔧 Function: `test_generator_exit_direct`
❌ #18
- Status: ❌
failed - Duration:
0.000203s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.0002548840129747987
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.0002034700009971857
📌 Outcome
failed
📌 Crash
path: /workspace/tligui_y/slic/tests/test_forth_file.py
lineno: 97
message: GeneratorExit
📌 Traceback
path: tests/test_forth_file.py
lineno: 97
message: GeneratorExit
📌 Longrepr
def test_generator_exit_direct():
# Directly raise GeneratorExit exception
> raise GeneratorExit()
E GeneratorExit
tests/test_forth_file.py:97: GeneratorExit
🔧 Teardown Phase
📌 Duration
0.00028958101756870747
📌 Outcome
passed
✅ Passed (12)
📁 test_forth_file.py
🔧 Function: `test_call_missing_function`
✅ #2
- Status: ✅
passed - Duration:
0.000369s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.0002374310279265046
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.00036875600926578045
📌 Outcome
passed
🔧 Teardown Phase
📌 Duration
0.00022587296552956104
📌 Outcome
passed
🔧 Function: `test_addition_pass`
✅ #3
- Status: ✅
passed - Duration:
0.000168s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.00018059194553643465
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.00016821699682623148
📌 Outcome
passed
🔧 Teardown Phase
📌 Duration
0.00019644806161522865
📌 Outcome
passed
🔧 Function: `test_division_zero`
✅ #5
- Status: ✅
passed - Duration:
0.000199s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.0001847690436989069
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.00019912805873900652
📌 Outcome
passed
🔧 Teardown Phase
📌 Duration
0.0001927070552483201
📌 Outcome
passed
🔧 Function: `test_memory_error`
✅ #8
- Status: ✅
passed - Duration:
0.000191s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.0001962520182132721
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.00019081402570009232
📌 Outcome
passed
🔧 Teardown Phase
📌 Duration
0.00019055802840739489
📌 Outcome
passed
🔧 Function: `test_timeout_error`
✅ #9
- Status: ✅
passed - Duration:
0.000178s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.0001834071008488536
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.00017829099670052528
📌 Outcome
passed
🔧 Teardown Phase
📌 Duration
0.000197281944565475
📌 Outcome
passed
🔧 Function: `test_recursion_error`
✅ #10
- Status: ✅
passed - Duration:
0.000922s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.00018886104226112366
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.0009218680206686258
📌 Outcome
passed
🔧 Teardown Phase
📌 Duration
0.00019885203801095486
📌 Outcome
passed
🔧 Function: `test_floating_point_error`
✅ #11
- Status: ✅
passed - Duration:
0.000167s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.00016559194773435593
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.0001672450453042984
📌 Outcome
passed
🔧 Teardown Phase
📌 Duration
0.00019546400289982557
📌 Outcome
passed
🔧 Function: `test_floating_point_overflow`
✅ #12
- Status: ✅
passed - Duration:
0.000198s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.00016887194942682981
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.00019802607130259275
📌 Outcome
passed
🔧 Teardown Phase
📌 Duration
0.00019642699044197798
📌 Outcome
passed
🔧 Function: `test_value_error`
✅ #13
- Status: ✅
passed - Duration:
0.000175s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.00016885192599147558
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.00017517199739813805
📌 Outcome
passed
🔧 Teardown Phase
📌 Duration
0.00018545810598880053
📌 Outcome
passed
🔧 Function: `test_type_error`
✅ #14
- Status: ✅
passed - Duration:
0.000187s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.0001802260521799326
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.0001867719693109393
📌 Outcome
passed
🔧 Teardown Phase
📌 Duration
0.00019219389650970697
📌 Outcome
passed
🔧 Function: `test_custom_error`
✅ #16
- Status: ✅
passed - Duration:
0.000186s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.00017698598094284534
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.00018586998339742422
📌 Outcome
passed
🔧 Teardown Phase
📌 Duration
0.0001962200039997697
📌 Outcome
passed
🔧 Function: `test_keyboard_interrupt_direct`
✅ #19
- Status: ✅
passed - Duration:
None - Severity:
normal
🔧 Setup Phase
📌 Duration
0.0002129509812220931
📌 Outcome
passed
❌ Xfailed (1)
📁 test_forth_file.py
🔧 Function: `test_multiply_xfail`
❌ #6
- Status: ❌
xfailed - Duration:
0.000292s - Severity:
normal
🔧 Setup Phase
📌 Duration
0.00019587797578424215
📌 Outcome
passed
🔧 Call Phase
📌 Duration
0.00029215996619313955
📌 Outcome
skipped
📌 Crash
path: /workspace/tligui_y/slic/tests/test_forth_file.py
lineno: 39
message: assert 4 == 5
+ where 4 = multiply(2, 2)
📌 Traceback
path: tests/test_forth_file.py
lineno: 39
message: AssertionError
📌 Longrepr
@pytest.mark.xfail(reason="Expected failure")
def test_multiply_xfail():
# Expected fail test (xfail): incorrect expected multiply result
> assert multiply(2, 2) == 5
E assert 4 == 5
E + where 4 = multiply(2, 2)
tests/test_forth_file.py:39: AssertionError
🔧 Teardown Phase
📌 Duration
0.00026641401927918196
📌 Outcome
passed
📚 Collected files
✅ (1 tests)
✅
- Outcome:
passed - Details:
result:
nodeid: .
type: Dir
✅ allure-results (1 tests)
✅ allure-results
- Outcome:
passed - Details:
result:
[]
✅ ci-reports (4 tests)
✅ ci-reports
- Outcome:
passed - Details:
result:
nodeid: ci-reports/allure
type: Dir
nodeid: ci-reports/coverage
type: Dir
nodeid: ci-reports/markdown
type: Dir
✅ ci-reports/allure
- Outcome:
passed - Details:
result:
[]
✅ ci-reports/coverage
- Outcome:
passed - Details:
result:
[]
✅ ci-reports/markdown
- Outcome:
passed - Details:
result:
[]
✅ functions (1 tests)
✅ functions
- Outcome:
passed - Details:
result:
[]
✅ tests (7 tests)
✅ tests
- Outcome:
passed - Details:
result:
nodeid: tests/test_broken_fct.py
type: Module
nodeid: tests/test_collector_error.py
type: Module
nodeid: tests/test_forth_file.py
type: Module
nodeid: tests/test_io_utils.py
type: Module
nodeid: tests/test_math_utils.py
type: Module
nodeid: tests/test_string_utils.py
type: Module
✅ tests/test_broken_fct.py
- Outcome:
passed - Details:
result:
[]
✅ tests/test_collector_error.py
- Outcome:
passed - Details:
result:
[]
✅ tests/test_forth_file.py
- Outcome:
passed - Details:
result:
nodeid: tests/test_forth_file.py::test_broken
type: Function
lineno: 13
nodeid: tests/test_forth_file.py::test_call_missing_function
type: Function
lineno: 17
nodeid: tests/test_forth_file.py::test_addition_pass
type: Function
lineno: 22
nodeid: tests/test_forth_file.py::test_addition_fail
type: Function
lineno: 26
nodeid: tests/test_forth_file.py::test_division_zero
type: Function
lineno: 30
nodeid: tests/test_forth_file.py::test_multiply_xfail
type: Function
lineno: 35
nodeid: tests/test_forth_file.py::test_runtime_error
type: Function
lineno: 40
nodeid: tests/test_forth_file.py::test_memory_error
type: Function
lineno: 44
nodeid: tests/test_forth_file.py::test_timeout_error
type: Function
lineno: 49
nodeid: tests/test_forth_file.py::test_recursion_error
type: Function
lineno: 54
nodeid: tests/test_forth_file.py::test_floating_point_error
type: Function
lineno: 61
nodeid: tests/test_forth_file.py::test_floating_point_overflow
type: Function
lineno: 66
nodeid: tests/test_forth_file.py::test_value_error
type: Function
lineno: 71
nodeid: tests/test_forth_file.py::test_type_error
type: Function
lineno: 76
nodeid: tests/test_forth_file.py::test_unhandled_exception
type: Function
lineno: 81
nodeid: tests/test_forth_file.py::test_custom_error
type: Function
lineno: 85
nodeid: tests/test_forth_file.py::test_stop_iteration_direct
type: Function
lineno: 90
nodeid: tests/test_forth_file.py::test_generator_exit_direct
type: Function
lineno: 94
nodeid: tests/test_forth_file.py::test_keyboard_interrupt_direct
type: Function
lineno: 98
nodeid: tests/test_forth_file.py::test_recursion_limit
type: Function
lineno: 102
nodeid: tests/test_forth_file.py::test_malformed_code
type: Function
lineno: 112
nodeid: tests/test_forth_file.py::test_sys_exit
type: Function
lineno: 117
nodeid: tests/test_forth_file.py::test_broken_function
type: Function
lineno: 125
nodeid: tests/test_forth_file.py::test_import_error_patch
type: Function
lineno: 133
nodeid: tests/test_forth_file.py::test_module_not_found_error
type: Function
lineno: 144
✅ tests/test_io_utils.py
- Outcome:
passed - Details:
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
✅ tests/test_math_utils.py
- Outcome:
passed - Details:
result:
nodeid: tests/test_math_utils.py::test_addition_pass
type: Function
lineno: 22
✅ tests/test_string_utils.py
- Outcome:
passed - Details:
result:
nodeid: tests/test_string_utils.py::test_uppercase_normal
type: Function
lineno: 7
nodeid: tests/test_string_utils.py::test_uppercase_type_error
type: Function
lineno: 11
nodeid: tests/test_string_utils.py::test_reverse_string
type: Function
lineno: 16
nodeid: tests/test_string_utils.py::test_warning_emit
type: Function
lineno: 20
nodeid: tests/test_string_utils.py::test_unicode_decode_error
type: Function
lineno: 30
nodeid: tests/test_string_utils.py::test_unicode_decode_surrogateescape
type: Function
lineno: 35
nodeid: tests/test_string_utils.py::test_import_warning
type: Function
lineno: 40
nodeid: tests/test_string_utils.py::test_xfail_uppercase_digits
type: Function
lineno: 47
✅ . (1 tests)
✅ .
- Outcome:
passed - Details:
result:
nodeid: allure-results
type: Dir
nodeid: ci-reports
type: Dir
nodeid: functions
type: Package
nodeid: tests
type: Package