diff --git a/test/runner/injector/injector.py b/test/runner/injector/injector.py index 31bc0cbc37..ac7fec5117 100755 --- a/test/runner/injector/injector.py +++ b/test/runner/injector/injector.py @@ -110,6 +110,8 @@ def main(): args, env, require_cwd = cover() else: args, env = runner() + elif os.path.basename(__file__) == 'python.py': + args, env = python() # run arbitrary python commands using the correct python and with optional code coverage else: args, env = injector() @@ -142,6 +144,20 @@ def main(): raise +def python(): + """ + :rtype: list[str], dict[str, str] + """ + if config.coverage_file: + args, env = coverage_command() + else: + args, env = [config.python_interpreter], os.environ.copy() + + args += config.arguments[1:] + + return args, env + + def injector(): """ :rtype: list[str], dict[str, str] diff --git a/test/runner/injector/python.py b/test/runner/injector/python.py new file mode 120000 index 0000000000..1f9d09cbf2 --- /dev/null +++ b/test/runner/injector/python.py @@ -0,0 +1 @@ +injector.py \ No newline at end of file