gecko-dev/dom/imptests
Boris Zbarsky 08d376c598 Bug 776536 part 4. Turn on WebIDL bindings for NodeIterator and TreeWalker. r=peterv
The behavior here is a bit weird because Document is still not a
WebIDL object, so calling createNodeIterator or createTreeWalker via
an Xray will call the XPCOM versions of those methods.  That means
that I can't just disable XPCOM-based wrapping for TreeWalker and
NodeIterator altogether, unfortunately, which means a web page could
try stashing a TreeWalker in something like userdata and then getting
it back and end up wrapping it as an XPCOM object the second time.

I could "fix" that by adding a wrapper cache and whatnot, I guess, if
desired...  But the problem will go away once we convert Document in
any case.
2013-02-28 12:56:42 -05:00
..
editing Bug 784841 - Part 18i: Convert dom/imptests with importTestsuite.py output; rs=gps 2013-02-25 12:47:19 -08:00
failures Bug 776536 part 4. Turn on WebIDL bindings for NodeIterator and TreeWalker. r=peterv 2013-02-28 12:56:42 -05:00
html Bug 784841 - Part 18i: Convert dom/imptests with importTestsuite.py output; rs=gps 2013-02-25 12:47:19 -08:00
webapps Bug 784841 - Part 18i: Convert dom/imptests with importTestsuite.py output; rs=gps 2013-02-25 12:47:19 -08:00
editing.mozbuild Bug 784841 - Part 18i: Convert dom/imptests with importTestsuite.py output; rs=gps 2013-02-25 12:47:19 -08:00
editing.txt Bug 751842 part 6 - Import editing spec tests; r=Ms2ger 2012-05-07 08:54:55 +03:00
html.mozbuild Bug 784841 - Part 18i: Convert dom/imptests with importTestsuite.py output; rs=gps 2013-02-25 12:47:19 -08:00
html.txt Bug 838088 - Update html tests; rs=mounir 2013-02-12 10:54:30 +01:00
idlharness.js Bug 742191 - Part c: Update testharness.js and friends some more; r=Aryeh 2012-10-14 09:48:14 +02:00
importTestsuite.py Bug 784841 - Part 15: Produce moz.build files for dom imported tests; r=Ms2ger 2013-02-25 12:46:50 -08:00
Makefile.in Bug 784841 - Part 18j: Convert dom/imptests with parseFailures.py output; rs=gps 2013-02-25 12:47:19 -08:00
moz.build Bug 784841 - Part 18j: Convert dom/imptests with parseFailures.py output; rs=gps 2013-02-25 12:47:19 -08:00
parseFailures.py Bug 784841 - Part 15: Produce moz.build files for dom imported tests; r=Ms2ger 2013-02-25 12:46:50 -08:00
parseManifest.py Bug 784841 - Part 14: Use 4-space indent on Python scripts in dom/imptests; rs=Ms2ger 2013-02-21 10:56:48 -08:00
README Bug 784841 - Part 15: Produce moz.build files for dom imported tests; r=Ms2ger 2013-02-25 12:46:50 -08:00
testharness.css Bug 774705 - Part a: Update /resources. 2012-08-04 09:43:59 +02:00
testharness.js Bug 742191 - Part b: Update testharness.js and friends; r=Aryeh 2012-10-14 09:46:57 +02:00
testharnessreport.js Bug 814777 - Try to fix timeout handling for testharness.js tests; r=jgraham 2012-11-24 20:05:37 +01:00
updateTestharness.py Bug 784841 - Part 15: Produce moz.build files for dom imported tests; r=Ms2ger 2013-02-25 12:46:50 -08:00
webapps.mozbuild Bug 784841 - Part 18i: Convert dom/imptests with importTestsuite.py output; rs=gps 2013-02-25 12:47:19 -08:00
webapps.txt Bug 771932 - Import some more DOM4 tests; r=sicking 2012-08-04 09:43:59 +02:00
WebIDLParser.js Bug 742191 - Part c: Update testharness.js and friends some more; r=Aryeh 2012-10-14 09:48:14 +02:00
writeBuildFiles.py Bug 784841 - Part 15: Produce moz.build files for dom imported tests; r=Ms2ger 2013-02-25 12:46:50 -08:00

This directory contains tests imported from W3C test suites. In order to make it
as easy as possible to update these tests, no changes are made to the imported
files (names for scripted tests do get a test_ prefix to integrate with the test
runner, however). The scripts to update tests are provided.


=======================
Files in this directory
=======================

Source;  Usage and purpose;  License

* testharness.js / testharness.css
  Directly imported from the W3C repository (<http://dvcs.w3.org/hg/resources>),
  with the updateTestharness.py script.
  Provide the test harness.
  W3C Test Suite License / W3C 3-clause BSD License

* idlharness.js
  Directly imported from the W3C repository (<http://dvcs.w3.org/hg/resources>),
  with the updateTestharness.py script.
  Used to test WebIDL.
  W3C Test Suite License / W3C 3-clause BSD License

* WebIDLParser.js
  Directly imported from the W3C repository (<http://dvcs.w3.org/hg/resources>),
  with the updateTestharness.py script.
  Used by idlharness.js to parse IDL blocks.
  MIT License

* updateTestharness.py
  Used to update the above files.
  MPL

* parseManifest.py
  Imported from <https://bitbucket.org/ms2ger/test-runner>. Parses MANIFEST
  files (provided in the W3C repository) as documented at
  <https://bitbucket.org/ms2ger/test-runner/raw/tip/manifests.txt>.
  MIT License

* testharnessreport.js
  Glue between testharness.js and our Mochitest runner.
  MPL

* importTestsuite.py
  Imports a test suite from a remote repository. Takes one argument, a file in
  the format described under webapps.txt.
  Note: removes both source and destination directory before starting. Do not
        use with outstanding changes in either directory.
  MPL

* parseFailures.py
  Parses failures out of a mochitest log and writes out JSON files and Makefiles
  into the correct failures/ folder.
  The mochitest log should be produced by setting the 'dumpFailures' flag in
  testharnessreport.js; this will print out the encountered failures, marked
  by @ signs.
  MPL

* writeBuildFiles.py
  Helper functions to write out automatically generated build files.
  MPL

* Makefile.in
  Integration with our build system. Installs support files into /resources and
  includes a .mk file for each repository.
  MPL

* failures/
  Expected failures for tests in each repository.  Each test's failures, if
  any, are in a file with the same path and name with .json appended.  New
  expected fail files currently needed to be added manually to makefiles.

* html.mk / webapps.mk / ...
  Generated by importTestsuite.py from webapps.txt.
  Contains a list of the directories with tests. To be included in Makefile.in.

* html.txt / webapps.txt / ...
  Input to importTestsuite.py.
  Lists the URL of the repository and the destination directory (separated by a
  vertical bar), followed by a list of directories within the repository
  (separated by line feeds).

* html / webapps / ...
  Actual tests.
  W3C Test Suite License / W3C 3-clause BSD License


=====================================================================
Importing an additional directory from an already-imported repository
=====================================================================

Add a line to the relevant data file (e.g. webapps.txt), with the path to the
additional directory relative to the root of the remote repository, and then run
the importTestsuite.py script, passing the data file as its argument.


==========================
Importing a new test suite
==========================

Create a data file in the format documented above, and run the
importTestsuite.py script, passing the data file as its argument.
This will create a foo.mk file; include this file in dom/imptests/Makefile.in.

Add any necessary files in failures/.