1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/dom/imptests/README Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,106 @@ 1.4 +This directory contains tests imported from W3C test suites. In order to make it 1.5 +as easy as possible to update these tests, no changes are made to the imported 1.6 +files (names for scripted tests do get a test_ prefix to integrate with the test 1.7 +runner, however). The scripts to update tests are provided. 1.8 + 1.9 + 1.10 +======================= 1.11 +Files in this directory 1.12 +======================= 1.13 + 1.14 +Source; Usage and purpose; License 1.15 + 1.16 +* testharness.js / testharness.css 1.17 + Directly imported from the W3C repository (<http://dvcs.w3.org/hg/resources>), 1.18 + with the updateTestharness.py script. 1.19 + Provide the test harness. 1.20 + W3C Test Suite License / W3C 3-clause BSD License 1.21 + 1.22 +* idlharness.js 1.23 + Directly imported from the W3C repository (<http://dvcs.w3.org/hg/resources>), 1.24 + with the updateTestharness.py script. 1.25 + Used to test WebIDL. 1.26 + W3C Test Suite License / W3C 3-clause BSD License 1.27 + 1.28 +* WebIDLParser.js 1.29 + Directly imported from the W3C repository (<http://dvcs.w3.org/hg/resources>), 1.30 + with the updateTestharness.py script. 1.31 + Used by idlharness.js to parse IDL blocks. 1.32 + MIT License 1.33 + 1.34 +* updateTestharness.py 1.35 + Used to update the above files. 1.36 + MPL 1.37 + 1.38 +* parseManifest.py 1.39 + Imported from <https://bitbucket.org/ms2ger/test-runner>. Parses MANIFEST 1.40 + files (provided in the W3C repository) as documented at 1.41 + <https://bitbucket.org/ms2ger/test-runner/raw/tip/manifests.txt>. 1.42 + MIT License 1.43 + 1.44 +* testharnessreport.js 1.45 + Glue between testharness.js and our Mochitest runner. 1.46 + MPL 1.47 + 1.48 +* importTestsuite.py 1.49 + Imports a test suite from a remote repository. Takes one argument, a file in 1.50 + the format described under webapps.txt. 1.51 + Note: removes both source and destination directory before starting. Do not 1.52 + use with outstanding changes in either directory. 1.53 + MPL 1.54 + 1.55 +* parseFailures.py 1.56 + Parses failures out of a mochitest log and writes out JSON files and Makefiles 1.57 + into the correct failures/ folder. 1.58 + The mochitest log should be produced by setting the 'dumpFailures' flag in 1.59 + testharnessreport.js; this will print out the encountered failures, marked 1.60 + by @ signs. 1.61 + MPL 1.62 + 1.63 +* writeBuildFiles.py 1.64 + Helper functions to write out automatically generated build files. 1.65 + MPL 1.66 + 1.67 +* Makefile.in 1.68 + Integration with our build system. Installs support files into /resources and 1.69 + includes a .mk file for each repository. 1.70 + MPL 1.71 + 1.72 +* failures/ 1.73 + Expected failures for tests in each repository. Each test's failures, if 1.74 + any, are in a file with the same path and name with .json appended. New 1.75 + expected fail files currently needed to be added manually to makefiles. 1.76 + 1.77 +* html.mk / webapps.mk / ... 1.78 + Generated by importTestsuite.py from webapps.txt. 1.79 + Contains a list of the directories with tests. To be included in Makefile.in. 1.80 + 1.81 +* html.txt / webapps.txt / ... 1.82 + Input to importTestsuite.py. 1.83 + Lists the URL of the repository and the destination directory (separated by a 1.84 + vertical bar), followed by a list of directories within the repository 1.85 + (separated by line feeds). 1.86 + 1.87 +* html / webapps / ... 1.88 + Actual tests. 1.89 + W3C Test Suite License / W3C 3-clause BSD License 1.90 + 1.91 + 1.92 +===================================================================== 1.93 +Importing an additional directory from an already-imported repository 1.94 +===================================================================== 1.95 + 1.96 +Add a line to the relevant data file (e.g. webapps.txt), with the path to the 1.97 +additional directory relative to the root of the remote repository, and then run 1.98 +the importTestsuite.py script, passing the data file as its argument. 1.99 + 1.100 + 1.101 +========================== 1.102 +Importing a new test suite 1.103 +========================== 1.104 + 1.105 +Create a data file in the format documented above, and run the 1.106 +importTestsuite.py script, passing the data file as its argument. 1.107 +This will create a foo.mk file; include this file in dom/imptests/Makefile.in. 1.108 + 1.109 +Add any necessary files in failures/.