Route delivered HQ tracks to temporary road interception and refresh playtest packages

This commit is contained in:
2026-09-20 11:52:14 +02:00
parent 81c0f060fd
commit ce4004db25
99 changed files with 18755 additions and 19 deletions
+14 -4
View File
@@ -331,20 +331,30 @@ class FailureGraceTests(unittest.TestCase):
self.assertEqual(monitor.timeout_result(), 'timeout')
def test_grace_bounds_rejected_before_any_native_mutation(self):
for grace in (-1, 31):
for grace in (-1, 121):
with self.subTest(grace=grace):
with self.assertRaisesRegex(ValueError, 'failure-grace 0..30'):
with self.assertRaisesRegex(ValueError, 'failure-grace 0..120'):
runner.StartupMonitor(100, 180, 15, grace)
class Args:
steam=Path('/steam'); compat=Path('/compat'); profile=Path('/profile')
timeout=180; settle=15; failure_grace=grace
with patch.object(runner, 'assert_no_game') as processes, patch.object(runner.subprocess, 'Popen') as spawn:
with self.assertRaisesRegex(ValueError, 'failure-grace 0..30'):
with self.assertRaisesRegex(ValueError, 'failure-grace 0..120'):
runner.run(Args())
processes.assert_not_called(); spawn.assert_not_called()
def test_longer_diagnostic_grace_remains_failed_and_absolute_bounded(self):
monitor = runner.StartupMonitor(100, 180, 15, 120)
self.assertIsNone(monitor.observe({'failed': True}, 105))
self.assertIsNone(monitor.observe({'ready': True}, 224))
self.assertEqual(monitor.observe({'ready': True}, 225), 'game-failed')
self.assertFalse(monitor.annotate({'ready': True})['ready'])
monitor = runner.StartupMonitor(100, 60, 15, 120)
self.assertIsNone(monitor.observe({'failed': True}, 159))
self.assertEqual(monitor.observe({'ready': True}, 160), 'game-failed')
def test_cli_default_and_explicit_grace(self):
for extra, expected in (([], 0), (['--failure-grace', '30'], 30)):
for extra, expected in (([], 0), (['--failure-grace', '30'], 30), (['--failure-grace', '120'], 120)):
with self.subTest(extra=extra), patch.object(sys, 'argv', ['headless_game.py', '--compat', '/unused', *extra]):
with patch.object(runner, 'run', return_value=1) as run:
self.assertEqual(runner.main(), 1)