diff options
Diffstat (limited to 'test-chill/unit-tests/test___main__.py')
-rw-r--r-- | test-chill/unit-tests/test___main__.py | 205 |
1 files changed, 205 insertions, 0 deletions
diff --git a/test-chill/unit-tests/test___main__.py b/test-chill/unit-tests/test___main__.py new file mode 100644 index 0000000..7a79417 --- /dev/null +++ b/test-chill/unit-tests/test___main__.py @@ -0,0 +1,205 @@ +import os +import unittest + +import testchill.gcov as gcov +import testchill.__main__ as main + + +def runtest(tc): + tc.setUp() + tc.run() + tc.tearDown() + +class TestMain(unittest.TestCase): + def setUp(self): + self.chill_dev_src = os.getenv('CHILL_DEV_SRC') + self.chill_release_src = os.getenv('CHILL_RELEASE_SRC') + self.omega_dev_src = os.getenv('OMEGA_DEV_SRC') + self.omega_release_src = os.getenv('OMEGA_RELEASE_SRC') + self.staging_dir_bin = os.getenv('STAGING_DIR_BIN') + self.staging_dir_wd = os.getenv('STAGING_DIR_WD') + + def test_main_parse_chillbuild(self): + pass + + def test_main_parse_chill_dev(self): + tclist = main.args_to_tclist('-b {} chill-testcase path/to/somescript.script path/to/somesrc.c'.format(self.staging_dir_bin).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + + self.assertEqual(tc.config.chill_dir, None) + self.assertEqual(tc.config.bin_dir, self.staging_dir_bin) + self.assertEqual(tc.config.build_cuda, False) + self.assertEqual(tc.config.version, 'dev') + self.assertEqual(tc.config.script_lang, 'script') + + self.assertEqual(tc.name, 'chill:somescript.script') + self.assertEqual(tc.wd, os.getcwd()) + self.assertEqual(tc.chill_bin, os.path.join(self.staging_dir_bin, 'chill')) + self.assertEqual(tc.chill_script, 'somescript.script') + self.assertEqual(tc.chill_src, 'somesrc.c') + self.assertEqual(tc.chill_script_path, os.path.join(os.getcwd(), 'path/to/somescript.script')) + self.assertEqual(tc.chill_src_path, os.path.join(os.getcwd(), 'path/to/somesrc.c')) + self.assertEqual(tc.chill_gensrc, 'rose_somesrc.c') + + def test_main_parse_chill_lua_dev(self): + tclist = main.args_to_tclist('-b {} chill-testcase path/to/somescript.lua path/to/somesrc.c'.format(self.staging_dir_bin).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + + self.assertEqual(tc.config.chill_dir, None) + self.assertEqual(tc.config.bin_dir, self.staging_dir_bin) + self.assertEqual(tc.config.build_cuda, False) + self.assertEqual(tc.config.version, 'dev') + self.assertEqual(tc.config.script_lang, 'lua') + + self.assertEqual(tc.name, 'chill-lua:somescript.lua') + self.assertEqual(tc.wd, os.getcwd()) + self.assertEqual(tc.chill_bin, os.path.join(self.staging_dir_bin, 'chill-lua')) + self.assertEqual(tc.chill_script, 'somescript.lua') + self.assertEqual(tc.chill_src, 'somesrc.c') + self.assertEqual(tc.chill_script_path, os.path.join(os.getcwd(), 'path/to/somescript.lua')) + self.assertEqual(tc.chill_src_path, os.path.join(os.getcwd(), 'path/to/somesrc.c')) + self.assertEqual(tc.chill_gensrc, 'rose_somesrc.c') + + def test_main_parse_chill_python_dev(self): + tclist = main.args_to_tclist('-b {} chill-testcase path/to/somescript.py path/to/somesrc.c'.format(self.staging_dir_bin).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + + self.assertEqual(tc.config.chill_dir, None) + self.assertEqual(tc.config.bin_dir, self.staging_dir_bin) + self.assertEqual(tc.config.build_cuda, False) + self.assertEqual(tc.config.version, 'dev') + self.assertEqual(tc.config.script_lang, 'python') + + self.assertEqual(tc.name, 'chill-python:somescript.py') + self.assertEqual(tc.wd, os.getcwd()) + self.assertEqual(tc.chill_bin, os.path.join(self.staging_dir_bin, 'chill-python')) + self.assertEqual(tc.chill_script, 'somescript.py') + self.assertEqual(tc.chill_src, 'somesrc.c') + self.assertEqual(tc.chill_script_path, os.path.join(os.getcwd(), 'path/to/somescript.py')) + self.assertEqual(tc.chill_src_path, os.path.join(os.getcwd(), 'path/to/somesrc.c')) + self.assertEqual(tc.chill_gensrc, 'rose_somesrc.c') + + def test_main_parse_cudachill_dev(self): + tclist = main.args_to_tclist('-b {} chill-testcase -u path/to/somescript.lua path/to/somesrc.c'.format(self.staging_dir_bin).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + + self.assertEqual(tc.config.chill_dir, None) + self.assertEqual(tc.config.bin_dir, self.staging_dir_bin) + self.assertEqual(tc.config.build_cuda, True) + self.assertEqual(tc.config.version, 'dev') + self.assertEqual(tc.config.script_lang, 'lua') + + self.assertEqual(tc.name, 'cuda-chill:somescript.lua') + self.assertEqual(tc.wd, os.getcwd()) + self.assertEqual(tc.chill_bin, os.path.join(self.staging_dir_bin, 'cuda-chill')) + self.assertEqual(tc.chill_script, 'somescript.lua') + self.assertEqual(tc.chill_src, 'somesrc.c') + self.assertEqual(tc.chill_script_path, os.path.join(os.getcwd(), 'path/to/somescript.lua')) + self.assertEqual(tc.chill_src_path, os.path.join(os.getcwd(), 'path/to/somesrc.c')) + self.assertEqual(tc.chill_gensrc, 'rose_somesrc.cu') + + def test_main_parse_cudachill_python_dev(self): + tclist = main.args_to_tclist('-b {} chill-testcase -u path/to/somescript.py path/to/somesrc.c'.format(self.staging_dir_bin).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + + self.assertEqual(tc.config.chill_dir, None) + self.assertEqual(tc.config.bin_dir, self.staging_dir_bin) + self.assertEqual(tc.config.build_cuda, True) + self.assertEqual(tc.config.version, 'dev') + self.assertEqual(tc.config.script_lang, 'python') + + self.assertEqual(tc.name, 'cuda-chill-python:somescript.py') + self.assertEqual(tc.wd, os.getcwd()) + self.assertEqual(tc.chill_bin, os.path.join(self.staging_dir_bin, 'cuda-chill-python')) + self.assertEqual(tc.chill_script, 'somescript.py') + self.assertEqual(tc.chill_src, 'somesrc.c') + self.assertEqual(tc.chill_script_path, os.path.join(os.getcwd(), 'path/to/somescript.py')) + self.assertEqual(tc.chill_src_path, os.path.join(os.getcwd(), 'path/to/somesrc.c')) + self.assertEqual(tc.chill_gensrc, 'rose_somesrc.cu') + + def test_main_parse_chill_release(self): + tclist = main.args_to_tclist('-b {} chill-testcase -v release path/to/somescript.script path/to/somesrc.c'.format(self.staging_dir_bin).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + self.assertEqual(tc.name, 'chill-release:somescript.script') + self.assertEqual(tc.wd, os.getcwd()) + self.assertEqual(tc.chill_bin, os.path.join(self.staging_dir_bin, 'chill-release')) + self.assertEqual(tc.chill_script, 'somescript.script') + self.assertEqual(tc.chill_src, 'somesrc.c') + self.assertEqual(tc.chill_script_path, os.path.join(os.getcwd(), 'path/to/somescript.script')) + self.assertEqual(tc.chill_src_path, os.path.join(os.getcwd(), 'path/to/somesrc.c')) + self.assertEqual(tc.chill_gensrc, 'rose_somesrc.c') + + def test_main_parse_chill_release(self): + tclist = main.args_to_tclist('-b {} chill-testcase -uv release path/to/somescript.lua path/to/somesrc.c'.format(self.staging_dir_bin).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + self.assertEqual(tc.name, 'cuda-chill-release:somescript.lua') + self.assertEqual(tc.wd, os.getcwd()) + self.assertEqual(tc.chill_bin, os.path.join(self.staging_dir_bin, 'cuda-chill-release')) + self.assertEqual(tc.chill_script, 'somescript.lua') + self.assertEqual(tc.chill_src, 'somesrc.c') + self.assertEqual(tc.chill_script_path, os.path.join(os.getcwd(), 'path/to/somescript.lua')) + self.assertEqual(tc.chill_src_path, os.path.join(os.getcwd(), 'path/to/somesrc.c')) + self.assertEqual(tc.chill_gensrc, 'rose_somesrc.cu') + + def test_main_parse_chillbuild_dev(self): + tclist = main.args_to_tclist('-b {} -C {} build-chill-testcase'.format(self.staging_dir_bin, self.chill_dev_src).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + self.assertEqual(tc.name, 'chill') + self.assertEqual(tc.config.bin_dir, self.staging_dir_bin) + self.assertEqual(tc.config.chill_dir, self.chill_dev_src) + self.assertEqual(tc.config.script_lang, 'script') + + def test_main_parse_chillbuild_lua_dev(self): + tclist = main.args_to_tclist('-b {} -C {} build-chill-testcase -i lua'.format(self.staging_dir_bin, self.chill_dev_src).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + self.assertEqual(tc.name, 'chill-lua') + self.assertEqual(tc.config.bin_dir, self.staging_dir_bin) + self.assertEqual(tc.config.chill_dir, self.chill_dev_src) + self.assertEqual(tc.config.script_lang, 'lua') + + def test_main_parse_chillbuild_python_dev(self): + tclist = main.args_to_tclist('-b {} -C {} build-chill-testcase -i python'.format(self.staging_dir_bin, self.chill_dev_src).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + self.assertEqual(tc.name, 'chill-python') + self.assertEqual(tc.config.bin_dir, self.staging_dir_bin) + self.assertEqual(tc.config.chill_dir, self.chill_dev_src) + self.assertEqual(tc.config.script_lang, 'python') + + def test_main_parse_chillbuild_cuda_dev(self): + tclist = main.args_to_tclist('-b {} -C {} build-chill-testcase -u'.format(self.staging_dir_bin, self.chill_dev_src).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + self.assertEqual(tc.name, 'cuda-chill') + self.assertEqual(tc.config.bin_dir, self.staging_dir_bin) + self.assertEqual(tc.config.chill_dir, self.chill_dev_src) + self.assertEqual(tc.config.script_lang, 'lua') + + def test_main_parse_chillbuild_cuda_python_dev(self): + tclist = main.args_to_tclist('-b {} -C {} build-chill-testcase -u -i python'.format(self.staging_dir_bin, self.chill_dev_src).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + self.assertEqual(tc.name, 'cuda-chill-python') + self.assertEqual(tc.config.bin_dir, self.staging_dir_bin) + self.assertEqual(tc.config.chill_dir, self.chill_dev_src) + self.assertEqual(tc.config.script_lang, 'python') + + def test_main_parse_chillbuild_release(self): + tclist = main.args_to_tclist('-b {} -C {} build-chill-testcase -v release'.format(self.staging_dir_bin, self.chill_dev_src).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + self.assertEqual(tc.name, 'chill-release') + self.assertEqual(tc.config.bin_dir, self.staging_dir_bin) + self.assertEqual(tc.config.chill_dir, self.chill_dev_src) + self.assertEqual(tc.config.script_lang, 'script') + + def test_main_parse_chillbuild_cuda_release(self): + tclist = main.args_to_tclist('-b {} -C {} build-chill-testcase -u -v release'.format(self.staging_dir_bin, self.chill_dev_src).split(), coverage_set=gcov.GcovSet()) + tc = tclist[0] + self.assertEqual(tc.name, 'cuda-chill-release') + self.assertEqual(tc.config.bin_dir, self.staging_dir_bin) + self.assertEqual(tc.config.chill_dir, self.chill_dev_src) + self.assertEqual(tc.config.script_lang, 'lua') + + def test_main_tctree(self): + tclist = main.args_to_tclist('batch test-cases/unit/chill-basic.tclist'.split(), coverage_set=gcov.GcovSet()) + for tc in tclist: + runtest(tc) + + |