feat: extend stall timeout and remove sample cap

This commit is contained in:
huojiarong committed 2026-08-19 11:34:31 +00:00
1 parent 27f9f4add8
commit eb6ea70e19
9 files changed
+105 -45

No files matched your search

+16 -6
View File
@@ -107,15 +107,22 @@ class SimulationSampleTimeSafetyTests(unittest.TestCase):
[1.0, 1.25],
)
def test_exact_point_limit_is_allowed(self) -> None:
def test_grid_can_exceed_the_legacy_point_limit(self) -> None:
times = simulation_sample_times(
SolveIVPConfig(t_start=0.0, t_stop=1.0),
SolveIVPConfig(t_start=0.0, t_stop=5.0),
0.0001,
)
self.assertEqual(len(times), 10001)
self.assertEqual(len(times), 50001)
self.assertEqual(times[0], 0.0)
self.assertEqual(times[-1], 1.0)
self.assertEqual(times[-1], 5.0)
def test_system_xml_accepts_more_than_the_legacy_point_limit(self) -> None:
report = validate_system_xml_document(
_system_xml(t_start="0", t_stop="5", sample_step="0.0001")
)
self.assertTrue(report.valid, report.issues)
def test_tiny_step_is_rejected_before_an_oversized_grid_is_allocated(self) -> None:
with self.assertRaises(SimulationSampleTimeError) as caught:
@@ -124,7 +131,10 @@ class SimulationSampleTimeSafetyTests(unittest.TestCase):
1.0e-300,
)
self.assertEqual(caught.exception.code, "SIMULATION_SAMPLE_COUNT_EXCEEDED")
self.assertEqual(
caught.exception.code,
"SIMULATION_SAMPLE_COUNT_UNREPRESENTABLE",
)
def test_non_finite_derived_duration_has_a_stable_error(self) -> None:
with self.assertRaises(SimulationSampleTimeError) as caught:
@@ -153,7 +163,7 @@ class SimulationSampleTimeSafetyTests(unittest.TestCase):
cases = (
(
_system_xml(t_start="0", t_stop="1", sample_step="1e-300"),
"SIMULATION_SAMPLE_COUNT_EXCEEDED",
"SIMULATION_SAMPLE_COUNT_UNREPRESENTABLE",
),
(
_system_xml(