mediawiki-extensions-Visual.../tests/parser
Gabriel Wicke feee9ded9f Convert the Cite extension to a token stream transformer.
This required a few further additions to the TokenTransformDispatcher. In
particular, there is now an 'any' token match whose callbacks are executed
before more specific callbacks. This is used by the Cite extension to eat all
tokens between ref and /ref tags. This need is very common, so should be
broken out to an intermediate layer in the future.

In general, the requirements for the TokenTransformDispatcher API are now
clearer, and the API should likely be cleaned up / simplified.
2011-12-13 14:48:47 +00:00
..
dumpReader.js First combination of WikiDom serializers with existing parser in 2011-11-03 13:55:48 +00:00
expansionTest.js First combination of WikiDom serializers with existing parser in 2011-11-03 13:55:48 +00:00
parserTests-whitelist.js Convert quote handling (italic/bold) to a core extension operating on the 2011-12-12 20:53:14 +00:00
parserTests.js Convert the Cite extension to a token stream transformer. 2011-12-13 14:48:47 +00:00
parserTests.pegjs First combination of WikiDom serializers with existing parser in 2011-11-03 13:55:48 +00:00
README Follow-up to r106001: Fix typo spotted by Nikerabbit. Good catch! 2011-12-13 13:00:57 +00:00
roundtrip-test.js Use pegjs from npm 2011-12-01 15:23:23 +00:00
roundtrip.js First combination of WikiDom serializers with existing parser in 2011-11-03 13:55:48 +00:00
tests.html First combination of WikiDom serializers with existing parser in 2011-11-03 13:55:48 +00:00
wikia-rte-roundtrip-tests.xml First combination of WikiDom serializers with existing parser in 2011-11-03 13:55:48 +00:00
worker.js First combination of WikiDom serializers with existing parser in 2011-11-03 13:55:48 +00:00

Work in progress. :)

Please see https://www.mediawiki.org/wiki/Future/Parser_development for some
information on how to get started with these tests and the current parser
architecture.

Needed npm modules:
* pegjs
* colors
* html5
* jquery
* jsdom
* diff
* libxmljs (requires native compilation)
* optimist (for argument handling)
* webworker (not needed for parserTests)

== Running parserTests.js ==

For parserTests, you also need MediaWiki's parser test cases (parserTests.txt)
either in a phase3 checkout parallel to extensions (tried by default). You can
also specify a test case file as an argument.

Then, in this directory, try:

node ./parserTests.js

Several options are available for parserTests:

node ./parserTests.js --help

Enjoy!

== Running roundtrip tests ==

Round-trip tests are not yet ported to the current parser architecture. The
focus so far has been on parserTests and getting the parser architecture in
shape, but we'll get back to round-trip tests eventually.