Run tap/tape tests from within grunt
JavaScript
Switch branches/tags
Nothing to show
Latest commit 678b63b Jun 21, 2016 @eugeneware 0.1.0
Permalink
Failed to load latest commit information.
tasks Use cross-spawn-async to spawn the tape process so it works on Windows. May 3, 2016
.gitignore
.jshintrc Initial commit Jan 14, 2014
README.md
package.json 0.1.0 Jun 21, 2016

README.md

grunt-tape

Run tap/tape tests from within grunt

Getting Started

This plugin requires Grunt.

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-tape --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-tape');

The "tape" task

Overview

In your project's Gruntfile, add a section named tape to the data object passed into grunt.initConfig().

module.exports = function (grunt) {
  grunt.initConfig({
    tape: {
      options: {
        pretty: true
        output: 'console'
      },
      files: ['test/**/*.js']
    }
  });
  grunt.loadNpmTasks('grunt-tape');
  grunt.registerTask('test', ['tape:pretty']);
  grunt.registerTask('ci', ['tape:ci']);
  grunt.registerTask('default', ['test']);
};

Options

options.pretty

Type: Boolean Default value: true

When true, the TAP output will be output through faucet and pretty printed to the console.

options.output

Type: String Default value: console

Outputs the TAP output to stdout if the output is 'console'. Outputs the TAP output to options.file if the output is file''.

options.file

Type: String

When options.output is 'file', then this will be the file location that the TAP output gets written to.

Usage Examples

Default Options

In this example, the default options are used to run tests in tests/*.js

grunt.initConfig({
  tape: {
    options: {},
    files: ['tests/*.js']
  }
})

Turn off pretty printing and just ouput raw TAP output to stdout

In this example, we write TAP to stdout:

grunt.initConfig({
  tape: {
    options: {
      pretty: false
    },
    files: ['tests/*.js']
  }
})

Save to file

In this example, custom options are used to write the output to a file:

grunt.initConfig({
  tape: {
    options: {
      output: 'file',
      file: './output.tap'
    },
    files: ['tests/*.js']
  }
})