29 lines
1.5 KiB
Diff
29 lines
1.5 KiB
Diff
--- a/tests/test_runner.py
|
|
+++ b/tests/test_runner.py
|
|
@@ -133,12 +133,19 @@
|
|
self.recovery_fixture()
|
|
for task_id in ("P13-01", "P13-02"):
|
|
with self.subTest(task_id=task_id):
|
|
- self.r.add(dict(self.contract, id=task_id))
|
|
- self.r.state(task_id, "blocked", "scope_violation: fixture.txt")
|
|
- with self.assertRaisesRegex(GateError, "blocked reason"):
|
|
- self.r.submit(task_id)
|
|
- self.assertEqual(self.r.task(task_id)["repairs"], 0)
|
|
- self.assertEqual(self.r.task(task_id)["state"], "blocked")
|
|
+ isolated = Runner.init("reject-" + task_id, self.repo,
|
|
+ self.r.baseline, self.r.config["validations"],
|
|
+ policy=self.r.config["policy"], state_root=self.root / "rejection-state")
|
|
+ try:
|
|
+ isolated.add(dict(self.contract, id=task_id))
|
|
+ isolated.state(task_id, "blocked", "scope_violation: fixture.txt")
|
|
+ with self.assertRaisesRegex(GateError, "blocked reason"):
|
|
+ isolated.submit(task_id)
|
|
+ self.assertEqual(isolated.task(task_id)["repairs"], 0)
|
|
+ self.assertEqual(isolated.task(task_id)["state"], "blocked")
|
|
+ self.assertIsNone(isolated.task(task_id)["submitted"])
|
|
+ finally:
|
|
+ isolated.db.close()
|
|
|
|
def test_p13_recovery_accepts_matching_forward_hashes(self):
|
|
_, artifact, _ = self.recovery_fixture()
|