Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
bin
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

N.U.T.R.A — Node Unit Test Runner Auxiliary

npm version Coverage Status Build Status Dependency Status devDependency Status

The "nutra" module is a simple, extendable unit test runner for node.

Quickstart

Get the "nutra" module up and running with just a few steps.

1) Install Nutra:
npm install --save-dev nutra

Nutra recommends Node v4+, as lower versions of node are not being officially supported.

2) Install Preset:

Give this one a try, for now.
Nutra requires presets to be installed with NPM v3+ do to its reliance on a flat dependency tree.

3) Add Nutra to NPM Scripts:
{ // package.json
  ...
  "scripts": {
    "test": "nutra --config ./nutra.config.js",
  }
  ...
}
4) Run CLI:
npm run test

Support

Questions About Usage:

For questions about usage (i.e. configuration, plugin development, etc), please post them on StackOverflow and tag it with the keyword "nutra".

Issues:

For bugs and other unexpected behavior, please post them up on the issue section of this GitHub.

Usage:

CLI:

Provide a nutra configuration file:
nutra --config "path/to/nutra.config.js"
The "--config" argument is required Path is relative to the current working directory (cwd).

JS API:
const nutra = Nutra({
  configFile: 'path/to/nutra.config.js', // optional
  files: ['test/specs/**/*.js', 'src/**/*.js']
})
nutra.start()

The "config" argument is required. Config path is relative to the current working directory (cwd).

Configuration Presets:

Configuration Anatomy:

// nutra.config.js
module.exports = function( config ) {
  config.set({

    // The "files" property allows you to specify the location of your app files and specs.
    // It expects an array of globs (https://github.com/isaacs/node-glob) and is always required.
    files: ['test/specs/**/*.js', 'src/**/*.js'],

    // The "absolutePaths" boolean property allows you to specify whether or not all file paths
    // should be treated as absolute. This includes the preprocessor patterns.
    absolutePaths: false,

    // The "frameworks" property allows you to specify nutra framework plugins, this will typically
    // be your test framework (i.e. jasmine, mocha, etc).
    frameworks: ['nutra-jasmine'],

    // The "preprocessors" property allows you to specify nutra preprocessors plugins, this will
    // typically be coverage or transpiling tools (i.e. babel, traceur, typescript, etc).
    preprocessors: {
      'test/specs/**/*.js': ['nutra-babel'],
      'src/**/*.js': ['nutra-babel', 'nutra-coverage']
    },

    // The "reporters" property allows you to specify nutra reporters plugins, this will
    // typically be coverage and other reporting tools.
    reporters: ['nutra-coverage'],

    // The "{{plugin}}Options" property allows you to specify nutra plugin options, this will
    // vary depending on what plugins you are using. An option property for each plugin must
    // be specified (i.e. babelOptions: {}, coverageOptions: {}, etc), but it is not required.
    coverageOptions: {
      dir : './coverage/',
      reporters: [
        { type: 'lcovonly', subdir: '.', file: 'lcov.info' }
      ]
    }
  })
}

Nutra Plugins:

Contributing

Pull requests are always welcome. In lieu of a formal styleguide, please:

  • Take care to maintain the existing coding style.
  • Add unit tests for any new or changed functionality.

Why?

I get a trill from reinventing a simpler, more efficient wheel.

About

The "N.U.T.R.A — Node Unit Test Runner Auxiliary" is a simple, extendable module for running unit tests in node.

Resources

License

Releases

No releases published

Packages

No packages published
You can’t perform that action at this time.