@kgryte/test-snippet v3.0.2
Test Snippet
Create a test file.
Installation
$ npm install @kgryte/test-snippet
Usage
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.js
CLI
Installation
To use the module as a general utility, install the module globally
$ npm install -g @kgryte/test-snippet
Usage
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 directory
To specify a destination directory other than the current working directory, provide a destination
.
$ test-snippet ./../some/other/directory
Tests
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 test
All 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-cov
Istanbul creates a ./reports/coverage
directory. To access an HTML version of the report,
$ make view-cov
License
Copyright
Copyright © 2015-2016. Athan Reines.