diff --git a/source/load_mod_from_source_code.py b/source/load_mod_from_source_code.py index b2204a5..a9a87b1 100644 --- a/source/load_mod_from_source_code.py +++ b/source/load_mod_from_source_code.py @@ -1,4 +1,4 @@ sc = "a=b" -my_name_space = {} +my_name_space = {"b": "b"} exec(sc, my_name_space) -print(my_name_space['a']) \ No newline at end of file +print(my_name_space['a']) diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/tests/__init__.py @@ -0,0 +1 @@ + diff --git a/tests/test_load_mod_from_source_code.py b/tests/test_load_mod_from_source_code.py new file mode 100644 index 0000000..230a0a8 --- /dev/null +++ b/tests/test_load_mod_from_source_code.py @@ -0,0 +1,24 @@ +import subprocess +import sys +import unittest +from pathlib import Path + + +class LoadModFromSourceCodeTestCase(unittest.TestCase): + def test_example_runs_and_prints_loaded_value(self): + repo_root = Path(__file__).resolve().parents[1] + + result = subprocess.run( + [sys.executable, str(repo_root / "source" / "load_mod_from_source_code.py")], + check=False, + capture_output=True, + text=True, + ) + + self.assertEqual("", result.stderr) + self.assertEqual(0, result.returncode) + self.assertEqual("b\n", result.stdout) + + +if __name__ == "__main__": + unittest.main()