37 lines
1.1 KiB
Python
37 lines
1.1 KiB
Python
# Copyright 2022 The Chromium Authors
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
"""Implements commands for running blink web tests."""
|
|
|
|
import os
|
|
import subprocess
|
|
|
|
from argparse import Namespace
|
|
from typing import Optional
|
|
|
|
from common import DIR_SRC_ROOT
|
|
from test_runner import TestRunner
|
|
|
|
_BLINK_TEST_SCRIPT = os.path.join(DIR_SRC_ROOT, 'third_party', 'blink',
|
|
'tools', 'run_web_tests.py')
|
|
|
|
|
|
class BlinkTestRunner(TestRunner):
|
|
"""Test runner for running blink web tests."""
|
|
|
|
def __init__(self, out_dir: str, test_args: Namespace,
|
|
target_id: Optional[str]) -> None:
|
|
super().__init__(out_dir, test_args, ['content_shell'], target_id)
|
|
|
|
# TODO(crbug.com/1278939): Remove when blink tests use CFv2 content_shell.
|
|
@staticmethod
|
|
def is_cfv2() -> bool:
|
|
return False
|
|
|
|
def run_test(self):
|
|
test_cmd = [_BLINK_TEST_SCRIPT, '-t', os.path.basename(self._out_dir)]
|
|
|
|
if self._test_args:
|
|
test_cmd.extend(self._test_args)
|
|
return subprocess.run(test_cmd, check=True)
|