Parsoid/Jenkins Testing

From mediawiki.org

Whenever a new patch is submitted to gerrit, Jenkins kicks in and runs the following jobs to test the patch:

  • JSHint checks whether the code meets coding guidelines -- voting job
  • Parser tests in the parsoid repo are run with the PHP test runner -- voting job

We have two sets of tests, one of which uses the production versions of node_modules found in the /mediawiki/services/parsoid/deploy.git repository, the other set of tests uses a fresh version of node_modules installed via npm install. This is to ensure that both the production deploy and a fresh user install continue to work and don't break. The jobs are:

  • Parse tool check: Verifies that "node parse" continues to function -- a lot of development relies on this tool not being broken -- voting job.
  • Roundtrip test: Verifies that the rountrip-test.js, the RT test runner continues to function -- our pre-deploy mass roundtrip testing relies on this script. A breakage might either a signal a problem with the script, or with our roundtripping code itself. -- voting job
  • Parser Tests check: Verifies that there are no parser test regressions -- voting job