@kgryte/test-snippet v3.0.2
Test Snippet
Create a test file.
Installation
$ npm install @kgryte/test-snippetUsage
var cp = require( '@kgryte/test-snippet' );cp( dest, opts )
Asynchronously creates a file in a specified destination directory or according to a specified filepath.
cp( 'path/to/an/existing/directory', onCreate );
function onCreate( error ) {
if ( error ) {
throw error;
}
console.log( 'Success!' );
}If dest is a directory, the output filename is test.js. To specify a different filename, provide an absolute filepath.
cp( 'path/to/an/existing/directory/test.foo.js', onCreate );
function onCreate( error ) {
if ( error ) {
throw error;
}
console.log( 'Success!' );
}The function accepts the following options:
- template: snippet template name. Default:
'tape'. - title: test title. Default:
''.
By default, a tape template is used. To specify a different snippet template, set the template option.
cp( 'path/to/a/directory', {
'template': 'mocha'
});To specify snippet fields, set the corresponding options.
cp( 'path/to/a/directory', {
'title': 'beep-boop'
});cp.sync( dest, opts )
Synchronously creates a file in a specified destination directory or according to a specified filepath.
// Directory:
cp.sync( 'path/to/an/existing/directory' );
// Filepath:
cp.sync( 'path/to/an/existing/directory/test.foo.js' );The function accepts the same options as the asynchronous version.
Notes
Supported templates may be found in the `./templates` directory and are named according to the directory name.
Examples
var mkdirp = require( 'mkdirp' );
var path = require( 'path' );
var cp = require( '@kgryte/test-snippet' );
var dirpath = path.resolve( __dirname, '../build/'+(new Date().getTime()) );
mkdirp.sync( dirpath );
var filepath = path.join( dirpath, 'test.foo.js' );
cp.sync( filepath, {
'template': 'mocha',
'title': 'beep-boop'
});To run the example code from the top-level application directory,
$ node ./examples/index.jsCLI
Installation
To use the module as a general utility, install the module globally
$ npm install -g @kgryte/test-snippetUsage
Usage: test-snippet [options] [destination]
Options:
-h, --help Print this message.
-V, --version Print the package version.
--templates List available templates.
-tmpl, --template name Template name. Default: 'tape'.
--title title Test title. Default: ''.Examples
$ cd ~/my/project/directory
$ test-snippet
# => creates a 'test.js' file in the current working directoryTo specify a destination directory other than the current working directory, provide a destination.
$ test-snippet ./../some/other/directoryTests
Unit
Unit tests use the Mocha test framework with Chai assertions. To run the tests, execute the following command in the top-level application directory:
$ make testAll new feature development should have corresponding unit tests to validate correct functionality.
Test Coverage
This repository uses Istanbul as its code coverage tool. To generate a test coverage report, execute the following command in the top-level application directory:
$ make test-covIstanbul creates a ./reports/coverage directory. To access an HTML version of the report,
$ make view-covLicense
Copyright
Copyright © 2015-2016. Athan Reines.