grunt-generatetestrunner

Grunt plugin for generating test-runner HTML

Usage no npm install needed!

<script type="module">
  import gruntGeneratetestrunner from 'https://cdn.skypack.dev/grunt-generatetestrunner';
</script>

README

grunt-generatetestrunner v0.4.0

Generate Test Runner HTML

Getting Started

This plugin requires Grunt ~0.4.0

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-generatetestrunner --save-dev

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

grunt.loadNpmTasks('grunt-generatetestrunner');

Generate Test Runner task

Run this task with the grunt generatetestrunner command.

Task targets and options may be specified according to the grunt Configuring tasks guide.

Options

dest

Type: String default: build/test-runner.html

Where to write the generate html document.

runner

Type: String

The test framework to generate a template for, required if no template is supplied.

srcLibs

Type: String or Array.<String>

Path to one or more javascript files which make up your sources which will be tested.

vendorLibs

Type: String or Array.<String>

Path to one or more javascript and / or css files which need to be loaded before your tests are executed; this will typically include the testing framework itself.

template

Type: String

Path to a custom template file to use, required if no runner is supplied.

data

Type: Object default: { title: 'TestRunner' }

Hash containing custom data to use when building the template.

Usage Examples

Using a default template

This library provides default templates for 'qunit' and 'mocha', you just need to supply the path to your own sources and the testing frameworks sources.

generatetestrunner: {
  main: {
    options: {
      // provide the path to your code which is under test.
      srcLibs: 'build/main.js',

      // provide the path to your testing framework, accepts js and css.
      vendorLibs: [ 'vendor/mocha*', 'vendor/chai*.js' ]

      // generate a template for use with Mocha.
      runner: 'mocha',
    }
  }
}
Using a custom template

Template files can be marked up with grunt template tags (defaults to: <%= and %>) which will be replaced with values present in the supplied data hash.

generatetestrunner: {
  main: {
    options: {
      srcLibs: 'build/main.js',
      vendorLibs: 'test/my-framework.js',
      template: 'test/runner.tpl',
      data: {
        custom: 'values'
      }
    }
  }
}