dotfiles/vscode/.vscode/extensions/ms-python.python-2024.12.1-linux-x64/python_files/testlauncher.py
2024-08-02 10:42:24 -06:00

46 lines
974 B
Python

# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License.
import os
import sys
def parse_argv():
"""Parses arguments for use with the test launcher.
Arguments are:
1. Working directory.
2. Test runner `pytest`
3. Rest of the arguments are passed into the test runner.
"""
cwd = sys.argv[1]
test_runner = sys.argv[2]
args = sys.argv[3:]
return (cwd, test_runner, args)
def run(cwd, test_runner, args):
"""Runs the test.
cwd -- the current directory to be set
testRunner -- test runner to be used `pytest`
args -- arguments passed into the test runner
"""
sys.path[0] = os.getcwd() # noqa: PTH109
os.chdir(cwd)
try:
if test_runner == "pytest":
import pytest
pytest.main(args)
sys.exit(0)
finally:
pass
if __name__ == "__main__":
cwd, test_runner, args = parse_argv()
run(cwd, test_runner, args)