Files
document-haness/tests/test_cli.py
T

31 lines
975 B
Python

from __future__ import annotations
import json
import tempfile
import unittest
from contextlib import redirect_stdout
from io import StringIO
from pathlib import Path
from claridoc.cli import main
class CliTests(unittest.TestCase):
def test_init_and_validate(self) -> None:
with tempfile.TemporaryDirectory() as temp:
workspace = Path(temp) / "workspace"
with redirect_stdout(StringIO()):
self.assertEqual(main(["init", str(workspace)]), 0)
code = main([
"validate",
"--brief", str(workspace / "brief.json"),
"--sources", str(workspace / "sources.json"),
])
self.assertEqual(code, 0)
self.assertTrue((workspace / "pipeline.mock.json").is_file())
self.assertIsInstance(json.loads((workspace / "brief.json").read_text(encoding="utf-8")), dict)
if __name__ == "__main__":
unittest.main()