fix(mosaic): bound promotion transport delivery

This commit is contained in:
Jason Woltje
2026-08-11 20:51:03 -05:00
parent 4f7f6b3281
commit c136baa052
5 changed files with 197 additions and 20 deletions
@@ -410,6 +410,33 @@ class PromotionCompleteTest(PromotionHookFixture):
self.assertTrue(self.pending_file.exists())
self.assertIn("ConnectionRefusedError", stderr)
def test_result_write_failure_exits_zero(self) -> None:
self.write_pending()
runner = mock.Mock(
return_value=self.completed(
{"stage": "promote_lease", "ok": True, "state": "VERIFIED"}
)
)
with mock.patch.object(self.complete, "write_result", side_effect=OSError("disk full")):
result, stderr = self.run_complete(runner)
self.assertEqual(result, 0)
self.assertIn("OSError", stderr)
def test_missing_lease_session_id_exits_zero(self) -> None:
self.write_pending()
environment = dict(self.environment)
del environment["MOSAIC_LEASE_SESSION_ID"]
runner = mock.Mock()
stderr = io.StringIO()
result = self.complete.main(environ=environment, stderr=stderr, run=runner)
self.assertEqual(result, 0)
runner.assert_not_called()
self.assertIn("KeyError", stderr.getvalue())
def test_insecure_runtime_directory_mode_preserves_pending(self) -> None:
self.write_pending(CHALLENGE)
self.runtime_dir.chmod(0o755)