fix: harden task recovery and DR contract handling

This commit is contained in:
2026-09-20 13:36:48 +08:00
parent 492676344a
commit f9d8feb6f0
49 changed files with 2083 additions and 165 deletions
+25
View File
@@ -0,0 +1,25 @@
import importlib.util
from pathlib import Path
import unittest
from unittest.mock import patch
ROOT=Path(__file__).resolve().parents[1]
spec=importlib.util.spec_from_file_location('coverage_report',ROOT/'tools/coverage_report.py')
coverage=importlib.util.module_from_spec(spec)
spec.loader.exec_module(coverage)
class CoverageCompatibilityTest(unittest.TestCase):
def test_non_source_line_markers_do_not_enter_coverage_counts(self):
# Python 3.14 trace may expose None for artificial bytecode positions.
with patch.object(coverage.trace,'_find_executable_linenos',return_value={None:1,0:1,1:1,7:1}):
actual=coverage.executable_lines('example.py')
self.assertEqual(actual,{1,7})
def test_real_source_lines_remain_available(self):
lines=coverage.executable_lines(__file__)
self.assertTrue(lines)
self.assertTrue(all(type(line) is int and line>0 for line in lines))
if __name__=='__main__':unittest.main()