michael@0: This directory contains tests imported from W3C test suites. In order to make it michael@0: as easy as possible to update these tests, no changes are made to the imported michael@0: files (names for scripted tests do get a test_ prefix to integrate with the test michael@0: runner, however). The scripts to update tests are provided. michael@0: michael@0: michael@0: ======================= michael@0: Files in this directory michael@0: ======================= michael@0: michael@0: Source; Usage and purpose; License michael@0: michael@0: * testharness.js / testharness.css michael@0: Directly imported from the W3C repository (), michael@0: with the updateTestharness.py script. michael@0: Provide the test harness. michael@0: W3C Test Suite License / W3C 3-clause BSD License michael@0: michael@0: * idlharness.js michael@0: Directly imported from the W3C repository (), michael@0: with the updateTestharness.py script. michael@0: Used to test WebIDL. michael@0: W3C Test Suite License / W3C 3-clause BSD License michael@0: michael@0: * WebIDLParser.js michael@0: Directly imported from the W3C repository (), michael@0: with the updateTestharness.py script. michael@0: Used by idlharness.js to parse IDL blocks. michael@0: MIT License michael@0: michael@0: * updateTestharness.py michael@0: Used to update the above files. michael@0: MPL michael@0: michael@0: * parseManifest.py michael@0: Imported from . Parses MANIFEST michael@0: files (provided in the W3C repository) as documented at michael@0: . michael@0: MIT License michael@0: michael@0: * testharnessreport.js michael@0: Glue between testharness.js and our Mochitest runner. michael@0: MPL michael@0: michael@0: * importTestsuite.py michael@0: Imports a test suite from a remote repository. Takes one argument, a file in michael@0: the format described under webapps.txt. michael@0: Note: removes both source and destination directory before starting. Do not michael@0: use with outstanding changes in either directory. michael@0: MPL michael@0: michael@0: * parseFailures.py michael@0: Parses failures out of a mochitest log and writes out JSON files and Makefiles michael@0: into the correct failures/ folder. michael@0: The mochitest log should be produced by setting the 'dumpFailures' flag in michael@0: testharnessreport.js; this will print out the encountered failures, marked michael@0: by @ signs. michael@0: MPL michael@0: michael@0: * writeBuildFiles.py michael@0: Helper functions to write out automatically generated build files. michael@0: MPL michael@0: michael@0: * Makefile.in michael@0: Integration with our build system. Installs support files into /resources and michael@0: includes a .mk file for each repository. michael@0: MPL michael@0: michael@0: * failures/ michael@0: Expected failures for tests in each repository. Each test's failures, if michael@0: any, are in a file with the same path and name with .json appended. New michael@0: expected fail files currently needed to be added manually to makefiles. michael@0: michael@0: * html.mk / webapps.mk / ... michael@0: Generated by importTestsuite.py from webapps.txt. michael@0: Contains a list of the directories with tests. To be included in Makefile.in. michael@0: michael@0: * html.txt / webapps.txt / ... michael@0: Input to importTestsuite.py. michael@0: Lists the URL of the repository and the destination directory (separated by a michael@0: vertical bar), followed by a list of directories within the repository michael@0: (separated by line feeds). michael@0: michael@0: * html / webapps / ... michael@0: Actual tests. michael@0: W3C Test Suite License / W3C 3-clause BSD License michael@0: michael@0: michael@0: ===================================================================== michael@0: Importing an additional directory from an already-imported repository michael@0: ===================================================================== michael@0: michael@0: Add a line to the relevant data file (e.g. webapps.txt), with the path to the michael@0: additional directory relative to the root of the remote repository, and then run michael@0: the importTestsuite.py script, passing the data file as its argument. michael@0: michael@0: michael@0: ========================== michael@0: Importing a new test suite michael@0: ========================== michael@0: michael@0: Create a data file in the format documented above, and run the michael@0: importTestsuite.py script, passing the data file as its argument. michael@0: This will create a foo.mk file; include this file in dom/imptests/Makefile.in. michael@0: michael@0: Add any necessary files in failures/.