This commit is contained in:
root
2026-05-18 06:48:30 +00:00
parent f1145e3a36
commit e638a4656c
14 changed files with 172 additions and 11 deletions

View File

@@ -1,9 +1,11 @@
from __future__ import annotations
import tempfile
import unittest
from pathlib import Path
from unittest.mock import patch
from src.runtime_bootstrap import compute_nofile_target, load_msg_push_exports
from src.runtime_bootstrap import compute_nofile_target, ensure_runtime_layout, load_msg_push_exports
class RuntimeBootstrapTests(unittest.TestCase):
@@ -18,6 +20,20 @@ class RuntimeBootstrapTests(unittest.TestCase):
result = funcs[0]("demo")
self.assertTrue(result["disabled"])
def test_ensure_runtime_layout_creates_expected_directories(self) -> None:
with tempfile.TemporaryDirectory() as tmp:
issues = ensure_runtime_layout(Path(tmp))
self.assertEqual(issues, [])
self.assertTrue((Path(tmp) / "backup_config").is_dir())
self.assertTrue((Path(tmp) / ".process_runner").is_dir())
def test_ensure_runtime_layout_reports_unwritable_directory(self) -> None:
with tempfile.TemporaryDirectory() as tmp:
root = Path(tmp)
with patch("src.runtime_bootstrap.os.access", side_effect=lambda p, mode: str(p) != str(root / "logs")):
issues = ensure_runtime_layout(root)
self.assertTrue(any("logs" in issue for issue in issues))
if __name__ == "__main__":
unittest.main()