Naivete Precedes Misrepresentation
    Have ideas to improve npm?Join in the discussion! »

    @wikimedia/mw-node-qunit

    6.2.1 • Public • Published

    mw-node-qunit

    A QUnit test runner for node, that adds some mediawiki specific things.

    npm install -g mw-node-qunit
    mw-node-qunit tests/*.js
    # Or for cross-shell and OS glob support
    mw-node-qunit 'tests/**/*.js'
    

    The output for the tests is in TAP format, which is pretty basic, if you want pretty output, here is a list of reporters you can install to prettify output. Example:

    npm install -g tap-dot
    mw-node-qunit tests/*.js | tap-dot
    

    If you want to run tests on watch, use nodemon for example:

    npm install -g nodemon
    nodemon -w src -w tests --exec "mw-node-qunit tests/*.js | tap-dot"
    

    Testing with QUnit

    This test runner will add QUnit, mediaWiki globals, and a jsdom window object and jquery initialized as window, document, and jQuery in the global scope so you can run your tests assuming those will be present.

    It also adds a sinon sandbox to the this scope on a test as this.sandbox that is automatically created and restored before and after every test, so you can spy/stub things in beforeEach or in the tests without worrying about having to manually restoring them after the test.

    Usage

    without ES6 support

    mw-node-qunit --require @babel/register \"tests/node-qunit/**/*.test.js\"
    

    Note, that this is innterchangeable with:

    qunit --require @babel/register \"tests/node-qunit/**/*.test.js\"
    

    The mw-node-qunit provides scaffolding that is useful for providing mock mediaWiki environments which can depend on existence of the jQuery, mediaWiki and DOM libraries.

    with ES6+ support

    Available using Babel dependencies:

        "@babel/core": "7.2.2",
        "@babel/preset-env": "7.3.1",
        "@babel/register": "7.0.0",
        "babel-loader": "8.0.5",
    

    You can do:

    mw-node-qunit --require @babel/register \"tests/node-qunit/**/*.test.js\"
    

    Install

    npm i @wikimedia/mw-node-qunit

    DownloadsWeekly Downloads

    217

    Version

    6.2.1

    License

    GPL-3.0

    Unpacked Size

    15.6 kB

    Total Files

    20

    Last publish

    Collaborators

    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar
    • avatar