From 59dfe0845d964868e92572c78a420b6d68c46ea4 Mon Sep 17 00:00:00 2001 From: AUTOMATIC <16777216c@gmail.com> Date: Sun, 30 Oct 2022 08:22:44 +0300 Subject: launch tests from launch.py with --tests commandline argument --- launch.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'launch.py') diff --git a/launch.py b/launch.py index 8affd410..33f98343 100644 --- a/launch.py +++ b/launch.py @@ -128,10 +128,12 @@ def prepare_enviroment(): blip_commit_hash = os.environ.get('BLIP_COMMIT_HASH', "48211a1594f1321b00f14c9f7a5b4813144b2fb9") sys.argv += shlex.split(commandline_args) + test_argv = [x for x in sys.argv if x != '--tests'] sys.argv, skip_torch_cuda_test = extract_arg(sys.argv, '--skip-torch-cuda-test') sys.argv, reinstall_xformers = extract_arg(sys.argv, '--reinstall-xformers') sys.argv, update_check = extract_arg(sys.argv, '--update-check') + sys.argv, run_tests = extract_arg(sys.argv, '--tests') xformers = '--xformers' in sys.argv deepdanbooru = '--deepdanbooru' in sys.argv ngrok = '--ngrok' in sys.argv @@ -194,6 +196,23 @@ def prepare_enviroment(): print("Exiting because of --exit argument") exit(0) + if run_tests: + tests(test_argv) + exit(0) + + +def tests(argv): + print(f"Launching Web UI in another process for testing with arguments: {' '.join(argv[1:])}") + + with open('test/stdout.txt', "w", encoding="utf8") as stdout, open('test/stderr.txt', "w", encoding="utf8") as stderr: + proc = subprocess.Popen([sys.executable, *argv], stdout=stdout, stderr=stderr) + + import test.server_poll + test.server_poll.run_tests() + + print(f"Stopping Web UI process with id {proc.pid}") + proc.kill() + def start_webui(): print(f"Launching Web UI with arguments: {' '.join(sys.argv[1:])}") -- cgit v1.2.1