chai-autoload-plugins

    0.1.0 • Public • Published

    chai-autoload-plugins

    Automatically load chai plugins declared in package.json.

    Latest Stable Version License Build Status

    Dependency Status NPM Downloads Test Coverage API Documentation Code Climate

    Installation

    npm install --save-dev chai-autoload-plugins
    

    Usage with Mocha

    Example using dirty-chai:

    package.json

      "devDependencies"{
        "chai": "^3.5.0",
        "chai-autoload-plugins": "*",
        "dirty-chai": "^1.2.2",
        "mocha": "^3.1.0"
      }

    test.js

    const chai = require('chai');
     
    expect(true).to.be.true();

    Run:

    node_modules/.bin/mocha --require chai-autoload-plugins test.js
    

    See Mocha integration tests for more details.

    Usage with other frameworks

    The only difference is that you have to have to require chai-autoload-plugins manually in the test files:

    test.js

    const chai = require('chai');
    require('chai-autoload-plugins');
     
    expect(true).to.be.true();

    See Jasmine integration tests or Jest integration tests for more details.

    Options

    By default, chai-autoload-plugins look for NPM modules whose name start with chai- or ends with -chai. This behavior can be overriden by declaring a chaiAutoloadPlugins field in package.json. Ex:

      "devDependencies"{
        "chai": "^3.5.0",
        "chai-autoload-plugins": "*",
        "my-custom-chai-plugin": "*",
        "mocha": "^3.1.0"
      },
      "chaiAutoloadPlugins"{
        "include": ["my-custom-chai-plugin"],
        "exclude": []
      }

    Note: if an array is given, it will include/exclude the exact names in the array. If a string is given, it will interpret it as a regular expression (ex: "include": "^.*-chai-.*$").

    include

    Regular expression or list of plugins to include.

    • Type: String|String[]
    • Default: "(^chai|-chai$)"

    exclude

    Regular expression or list of plugins to exclude. Precedes include.

    • Type: String|String[]
    • Default: []

    Notes

    Browser support

    This modules needs to read the contents of package.json on the disk, and therefore is not compatible with in-browser tests (ex: Karma). It is and will only be targeting NodeJS.

    Install

    npm i chai-autoload-plugins

    DownloadsWeekly Downloads

    1,472

    Version

    0.1.0

    License

    ISC

    Last publish

    Collaborators

    • amercier