# Copyright 2023 The Chromium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. from __future__ import annotations import pathlib import sys from typing import Union import pytest from crossbench import config is_google_env = config.is_google_env root_dir = config.root_dir config_dir = config.config_dir def crossbench_dir() -> pathlib.Path: if is_google_env(): return root_dir() return root_dir() / "crossbench" def run_pytest(path: Union[str, pathlib.Path], *args): extra_args = [*args, *sys.argv[1:]] # Run tests single-threaded by default when running the test file directly. if "-n" not in extra_args: extra_args.extend(["-n", "1"]) if "-r" not in extra_args: extra_args.extend(["-r", "s"]) sys.exit(pytest.main([str(path), *extra_args]))