def test_run_module_code_defaults(self): saved_argv0 = sys.argv[0] d = _run_module_code(self.test_source) assert d["result"] == self.expected_result assert d["__name__"] is None assert d["__file__"] is None assert d["__loader__"] is None assert d["run_argv0"] is saved_argv0 assert "run_name" not in d assert sys.argv[0] is saved_argv0
def test_run_module_code(self): initial = object() name = "<Nonsense>" file = "Some other nonsense" loader = "Now you're just being silly" d1 = dict(initial=initial) saved_argv0 = sys.argv[0] d2 = _run_module_code(self.test_source, d1, name, file, loader, True) assert "result" not in d1 assert d2["initial"] is initial assert d2["result"] == self.expected_result assert d2["nested"]["x"] == 1 assert d2["__name__"] is name assert d2["run_name"] is name assert d2["__file__"] is file assert d2["run_argv0"] is file assert d2["__loader__"] is loader assert sys.argv[0] is saved_argv0 assert name not in sys.modules