Remove all outdated CSS-related mach commands.

This commit is contained in:
Josh Matthews 2017-11-01 18:17:31 -04:00
parent 12d22f6bd2
commit 28c20988f0
7 changed files with 7 additions and 300 deletions

View file

@ -52,9 +52,6 @@ TEST_SUITES = OrderedDict([
"paths": [path.abspath(WEB_PLATFORM_TESTS_PATH), "paths": [path.abspath(WEB_PLATFORM_TESTS_PATH),
path.abspath(SERVO_TESTS_PATH)], path.abspath(SERVO_TESTS_PATH)],
"include_arg": "include"}), "include_arg": "include"}),
("css", {"kwargs": {"release": False},
"paths": [path.abspath(path.join("tests", "wpt", "css-tests"))],
"include_arg": "include"}),
("unit", {"kwargs": {}, ("unit", {"kwargs": {},
"paths": [path.abspath(path.join("tests", "unit"))], "paths": [path.abspath(path.join("tests", "unit"))],
"include_arg": "test_name"}), "include_arg": "test_name"}),
@ -115,7 +112,6 @@ class MachCommands(CommandBase):
suites["tidy"]["kwargs"] = {"all_files": tidy_all, "no_progress": no_progress, "self_test": self_test, suites["tidy"]["kwargs"] = {"all_files": tidy_all, "no_progress": no_progress, "self_test": self_test,
"stylo": False} "stylo": False}
suites["wpt"]["kwargs"] = {"release": release} suites["wpt"]["kwargs"] = {"release": release}
suites["css"]["kwargs"] = {"release": release}
suites["unit"]["kwargs"] = {} suites["unit"]["kwargs"] = {}
suites["compiletest"]["kwargs"] = {"release": release} suites["compiletest"]["kwargs"] = {"release": release}
@ -609,41 +605,6 @@ class MachCommands(CommandBase):
def update_jquery(self, release, dev): def update_jquery(self, release, dev):
return self.jquery_test_runner("update", release, dev) return self.jquery_test_runner("update", release, dev)
@Command('test-css',
description='Run the web platform CSS tests',
category='testing',
parser=create_parser_wpt)
def test_css(self, **kwargs):
self.ensure_bootstrapped()
ret = self.run_test_list_or_dispatch(kwargs["test_list"], "css", self._test_css, **kwargs)
if kwargs["always_succeed"]:
return 0
else:
return ret
def _test_css(self, **kwargs):
run_file = path.abspath(path.join("tests", "wpt", "run_css.py"))
return self.wptrunner(run_file, **kwargs)
@Command('update-css',
description='Update the web platform CSS tests',
category='testing',
parser=updatecommandline.create_parser())
@CommandArgument('--patch', action='store_true', default=False,
help='Create an mq patch or git commit containing the changes')
def update_css(self, patch, **kwargs):
self.ensure_bootstrapped()
run_file = path.abspath(path.join("tests", "wpt", "update_css.py"))
kwargs["no_patch"] = not patch
if kwargs["no_patch"] and kwargs["sync"]:
print("Are you sure you don't want a patch?")
return 1
run_globals = {"__file__": run_file}
execfile(run_file, run_globals)
return run_globals["update_tests"](**kwargs)
@Command('compare_dromaeo', @Command('compare_dromaeo',
description='Compare outputs of two runs of ./mach test-dromaeo command', description='Compare outputs of two runs of ./mach test-dromaeo command',
category='testing') category='testing')

View file

@ -51,7 +51,6 @@ files = [
"./components/style/gecko/generated/atom_macro.rs", "./components/style/gecko/generated/atom_macro.rs",
"./resources/hsts_preload.json", "./resources/hsts_preload.json",
"./tests/wpt/metadata/MANIFEST.json", "./tests/wpt/metadata/MANIFEST.json",
"./tests/wpt/metadata-css/MANIFEST.json",
"./components/script/dom/webidls/ForceTouchEvent.webidl", "./components/script/dom/webidls/ForceTouchEvent.webidl",
"./support/android/openssl.sh", "./support/android/openssl.sh",
# Ignore those files since the issues reported are on purpose # Ignore those files since the issues reported are on purpose
@ -65,13 +64,11 @@ files = [
directories = [ directories = [
# Upstream # Upstream
"./support/android/apk", "./support/android/apk",
"./tests/wpt/css-tests",
"./tests/wpt/harness", "./tests/wpt/harness",
"./tests/wpt/update", "./tests/wpt/update",
"./tests/wpt/web-platform-tests", "./tests/wpt/web-platform-tests",
"./tests/wpt/mozilla/tests/mozilla/referrer-policy", "./tests/wpt/mozilla/tests/mozilla/referrer-policy",
"./tests/wpt/sync", "./tests/wpt/sync",
"./tests/wpt/sync_css",
"./python/tidy/servo_tidy_tests", "./python/tidy/servo_tidy_tests",
"./components/script/dom/bindings/codegen/parser", "./components/script/dom/bindings/codegen/parser",
"./components/script/dom/bindings/codegen/ply", "./components/script/dom/bindings/codegen/ply",

View file

@ -1,4 +1,4 @@
This folder contains the web platform tests, CSS WG tests, and the This folder contains the web platform tests and the
code required to integrate them with Servo. code required to integrate them with Servo.
To learn how to write tests, go [here](http://web-platform-tests.org/writing-tests/index.html). To learn how to write tests, go [here](http://web-platform-tests.org/writing-tests/index.html).
@ -9,15 +9,10 @@ In particular, this folder contains:
* `config.ini`: some configuration for the web-platform-tests. * `config.ini`: some configuration for the web-platform-tests.
* `include.ini`: the subset of web-platform-tests we currently run. * `include.ini`: the subset of web-platform-tests we currently run.
* `config_css.ini`: some configuration for the CSSWG tests.
* `include_css.ini`: the subset of the CSSWG tests we currently run.
* `run_wpt.py`: glue code to run the web-platform-tests in Servo. * `run_wpt.py`: glue code to run the web-platform-tests in Servo.
* `run_css.py`: glue code to run the CSSWG tests in Servo. * `run.py`: common code used by `run_wpt.py`.
* `run.py`: common code used by `run_wpt.py` and `run_css.py`.
* `web-platform-tests`: copy of the web-platform-tests. * `web-platform-tests`: copy of the web-platform-tests.
* `metadata`: expected failures for the web-platform-tests we run. * `metadata`: expected failures for the web-platform-tests we run.
* `css-tests`: copy of the built CSSWG tests.
* `metadata-css`: expected failures for the CSSWG tests we run.
* `mozilla`: web-platform-tests that cannot be upstreamed. * `mozilla`: web-platform-tests that cannot be upstreamed.
Running the tests Running the tests
@ -28,8 +23,6 @@ test-wpt` in the root directory. This will run the subset of
JavaScript tests defined in `include.ini` and log the output to JavaScript tests defined in `include.ini` and log the output to
stdout. stdout.
Similarly the CSSWG tests can be run using `./mach test-css`.
A subset of tests may be run by providing positional arguments to the A subset of tests may be run by providing positional arguments to the
mach command, either as filesystem paths or as test urls e.g. mach command, either as filesystem paths or as test urls e.g.
@ -56,10 +49,9 @@ test with `mach test-wpt --release`
Running the tests without mach Running the tests without mach
------------------------------ ------------------------------
When avoiding `mach` for some reason, one can run either `run_wpt.py` When avoiding `mach` for some reason, one can run `run_wpt.py`
ir `run_css.py` directly. However, this requires that all the directly. However, this requires that all the dependencies for
dependencies for `wptrunner` are avaliable in the current python `wptrunner` are avaliable in the current python environment.
environment.
Running the tests manually Running the tests manually
-------------------------- --------------------------
@ -135,9 +127,6 @@ log is saved, run from the root directory:
./mach update-wpt /tmp/servo.log ./mach update-wpt /tmp/servo.log
For CSSWG tests a similar prcedure works, with `./mach test-css` and
`./mach update-css`.
Writing new tests Writing new tests
================= =================
@ -167,11 +156,6 @@ web-platform-tests may be edited in-place and the changes committed to
the servo tree. These changes will be upstreamed when the tests are the servo tree. These changes will be upstreamed when the tests are
next synced. next synced.
For CSS tests this kind of in-place update is not possible because the
tests have a build step before they are pulled into the servo
repository. Therefore corrections must be submitted directly to the
source repository.
Updating the upstream tests Updating the upstream tests
=========================== ===========================
@ -183,8 +167,7 @@ commands. e.g. to update the web-platform-tests:
./mach update-wpt update.log ./mach update-wpt update.log
This should create two commits in your servo repository with the This should create two commits in your servo repository with the
updated tests and updated metadata. The same process works for the updated tests and updated metadata.
CSSWG tests, using the `update-css` and `test-css` mach commands.
Servo-specific tests Servo-specific tests
==================== ====================
@ -200,7 +183,7 @@ Analyzing reftest results
Reftest results can be analyzed from a raw log file. To generate this run Reftest results can be analyzed from a raw log file. To generate this run
with the `--log-raw` option e.g. with the `--log-raw` option e.g.
./mach test-css --log-raw css.log ./mach test-wpt --log-raw wpt.log
This file can then be fed into the This file can then be fed into the
[reftest analyzer](http://hoppipolla.co.uk/410/reftest-analyser-structured.xhtml) [reftest analyzer](http://hoppipolla.co.uk/410/reftest-analyser-structured.xhtml)

View file

@ -1,17 +0,0 @@
[products]
servo =
servodriver =
[web-platform-tests]
name = CSS tests
remote_url = https://github.com/jgraham/css-test-built
branch = master
sync_path = sync_css
[paths]
run-info = .
[manifest:upstream]
tests = css-tests
metadata = metadata-css
url-base = /

View file

@ -1,154 +0,0 @@
skip: true
[compositing-1_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css21_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-animations-1_dev]
skip: false
[xhtml1]
skip: true
[css-backgrounds-3_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-color-3_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-conditional-3_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-flexbox-1_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-images-3_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-multicol-1_dev]
skip: true
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-style-attr-1_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-text-3_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-text-decor-3_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-transforms-1_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-transitions-1_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-ui-3_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[css-values-3_dev]
skip: false
[xhtml1]
skip: true
[css-variables-1_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[cssom-1_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[cssom-view-1_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[filters-1_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[geometry-1_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[mediaqueries-3_dev]
skip: false
[xhtml1]
skip: true
[xhtml1print]
skip: true
[selectors-3_dev]
skip: false

View file

@ -1,20 +0,0 @@
# 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 run
import sys
paths = {"include_manifest": run.wpt_path("include_css.ini"),
"config": run.wpt_path("config_css.ini")}
def run_tests(**kwargs):
return run.run_tests(paths=paths, **kwargs)
def main():
return run.main(paths)
if __name__ == "__main__":
sys.exit(0 if main() else 1)

View file

@ -1,43 +0,0 @@
# 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 os
import sys
here = os.path.split(__file__)[0]
def wpt_path(*args):
return os.path.join(here, *args)
# Imports
sys.path.append(wpt_path("web-platform-tests", "tools", "wptrunner"))
from wptrunner import wptcommandline
def update_tests(**kwargs):
from wptrunner import update
set_defaults(kwargs)
logger = update.setup_logging(kwargs, {"mach": sys.stdout})
rv = update.run_update(logger, **kwargs)
return 0 if rv is update.update.exit_clean else 1
def set_defaults(kwargs):
if kwargs["product"] is None:
kwargs["product"] = "servo"
if kwargs["config"] is None:
kwargs["config"] = wpt_path('config_css.ini')
wptcommandline.set_from_config(kwargs)
def main():
parser = wptcommandline.create_parser_update()
kwargs = vars(parser.parse_args())
return update_tests(**kwargs)
if __name__ == "__main__":
sys.exit(0 if main() else 1)