diff options
Diffstat (limited to 'test/test_general.py')
| -rw-r--r-- | test/test_general.py | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/test/test_general.py b/test/test_general.py new file mode 100644 index 0000000..eb3185d --- /dev/null +++ b/test/test_general.py @@ -0,0 +1,31 @@ +import subprocess +import unittest + +from tempfile import TemporaryDirectory + +class SalisTest(unittest.TestCase): + def setUp(self): + self.tempdir = TemporaryDirectory(prefix="salis_test_") + + def tearDown(self): + self.tempdir.cleanup() + + @staticmethod + def run_subprocess(cmd): + subprocess.run(cmd.split(), check=True, stdout=subprocess.DEVNULL) + + @staticmethod + def run_pipe(cmd): + return subprocess.Popen(cmd.split(), stdout=subprocess.PIPE, text=True) + + @staticmethod + def run_ui_test(anc, anc_path, ui, ui_path, vm_arch, clones=1, cores=1, name="def.sim"): + def test_decorator(test_case): + def test_wrapper(self): + cmd = f"./salis.py new -a{anc} -A{anc_path} -C{clones} -c{cores} -H{self.tempdir.name} -n{name} -u{ui} -U{ui_path} -v{vm_arch}" + subprocess.run(cmd.split(), check=True, stdout=subprocess.DEVNULL) + test_case(self) + + return test_wrapper + + return test_decorator |
