MCPcopy Index your code
hub / github.com/RustPython/RustPython / test_rerun_success

Method test_rerun_success

Lib/test/test_regrtest.py:1523–1564  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1521 stats=TestStats(3, 2))
1522
1523 def test_rerun_success(self):
1524 # FAILURE then SUCCESS
1525 marker_filename = os.path.abspath("regrtest_marker_filename")
1526 self.addCleanup(os_helper.unlink, marker_filename)
1527 self.assertFalse(os.path.exists(marker_filename))
1528
1529 code = textwrap.dedent(f"""
1530 import os.path
1531 import unittest
1532
1533 marker_filename = {marker_filename!r}
1534
1535 class Tests(unittest.TestCase):
1536 def test_succeed(self):
1537 return
1538
1539 def test_fail_once(self):
1540 if not os.path.exists(marker_filename):
1541 open(marker_filename, "w").close()
1542 self.fail("bug")
1543 """)
1544 testname = self.create_test(code=code)
1545
1546 # FAILURE then SUCCESS => exit code 0
1547 output = self.run_tests("--rerun", testname, exitcode=0)
1548 self.check_executed_tests(output, [testname],
1549 rerun=Rerun(testname,
1550 match="test_fail_once",
1551 success=True),
1552 stats=TestStats(3, 1))
1553 os_helper.unlink(marker_filename)
1554
1555 # with --fail-rerun, exit code EXITCODE_RERUN_FAIL
1556 # on "FAILURE then SUCCESS" state.
1557 output = self.run_tests("--rerun", "--fail-rerun", testname,
1558 exitcode=EXITCODE_RERUN_FAIL)
1559 self.check_executed_tests(output, [testname],
1560 rerun=Rerun(testname,
1561 match="test_fail_once",
1562 success=True),
1563 stats=TestStats(3, 1))
1564 os_helper.unlink(marker_filename)
1565
1566 def test_rerun_setup_class_hook_failure(self):
1567 # FAILURE then FAILURE

Callers

nothing calls this directly

Calls 10

run_testsMethod · 0.95
TestStatsClass · 0.90
RerunClass · 0.85
addCleanupMethod · 0.80
assertFalseMethod · 0.80
dedentMethod · 0.80
create_testMethod · 0.80
check_executed_testsMethod · 0.80
existsMethod · 0.45
unlinkMethod · 0.45

Tested by

no test coverage detected