Commit 5b621a1f authored by Mickaël Desfrênes's avatar Mickaël Desfrênes
Browse files

add test

parent 0d748e99
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
import unittest
from src.climax.__main__ import MaXProjectConfig, dir_is_max
from pathlib import Path
import tempfile
import subprocess

TEST_CONFIG_FILE = "tests_assets/max_config.xml"
TEST_CONFIG_EMPTY_FILE = "tests_assets/empty_max_config.xml"
@@ -45,6 +47,20 @@ class TestConfigFiles(unittest.TestCase):
        config.version = {"name": "name", "url": "url"}
        self.assertEqual({"name": "name", "url": "url"}, config.version)

    def test_max_project(self):
        with tempfile.TemporaryDirectory() as tmpdir:
            p = subprocess.run(["climax", "--help"], stdout=subprocess.PIPE)
            self.assertTrue("--show-completion" in p.stdout.decode("utf-8"))
            p = subprocess.run(["climax", "new", tmpdir], stdout=subprocess.PIPE)
            self.assertTrue(Path(tmpdir, "config.xml").is_file())
            self.assertTrue(Path(tmpdir, ".max").is_dir())
            p = subprocess.run(["climax", "projects"], stdout=subprocess.PIPE)
            self.assertTrue(tmpdir in p.stdout.decode("utf-8"))
            p = subprocess.run(
                ["climax", "info", "--directory", tmpdir], stdout=subprocess.PIPE
            )
            print(p.stdout.decode("utf-8"))


if __name__ == "__main__":
    unittest.main()