Files
tubestation/testing/web-platform/mach_commands_base.py
James Graham d0dd87c178 Bug 1294820 - Add support for running wpt from one-click loaner mach environment, r=ahal
Allow running |mach wpt| on one click loaners in order to run
web-platform-tests tests.

This implementation is just like the one for other testsuites using
thee packaged tests rather than the checkout that we get with wpt, at
least on Linux. That's also where the tests run from so it seems
reasonable for now. Moving to the checkout in the future could remove
some of the logic here by using a fake mozbuild environment so that
the testsuite itself doesn't have to implement anything much.

MozReview-Commit-ID: CaewrdjJ2ef
2017-06-19 19:20:41 +01:00

30 lines
1018 B
Python

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
import sys
def create_parser_wpt():
from wptrunner import wptcommandline
return wptcommandline.create_parser(["firefox", "chrome", "edge", "servo"])
class WebPlatformTestsRunner(object):
"""Run web platform tests."""
def __init__(self, setup):
self.setup = setup
def run(self, **kwargs):
from wptrunner import wptrunner
if kwargs["product"] in ["firefox", None]:
self.setup.kwargs_firefox(kwargs)
elif kwargs["product"] in ("chrome", "edge", "servo"):
self.setup.kwargs_wptrun(kwargs)
else:
raise ValueError("Unknown product %s" % kwargs["product"])
logger = wptrunner.setup_logging(kwargs, {self.setup.default_log_type: sys.stdout})
result = wptrunner.start(**kwargs)
return int(not result)