Get the help output from a yargs instance.
This module is very handy when you are developing tests for a project that has a CLI, specially when used in conjunction with snapshot testing.
$ npm install yargs-get-help
import yargs from 'yargs';
import getHelp from 'yargs-get-help';
yargs
.option('include', { type: 'boolean', describe: 'This is the include option' });
const help = getHelp(yargs);
// `help` will contain yargs `$0 --help` output as a string
import yargs from 'yargs';
import getHelp from 'yargs-get-help';
yargs
.command('serve', 'Start the server', (yargs) => {
yargs
.option('port', {
describe: 'The port to bind on',
default: 5000,
});
}, (argv) => {
serve(argv.port);
})
.command('build', 'Builds the project', (yargs) => {
yargs
.option('public-path', {
describe: 'The webpack public-path',
default: '/',
});
}, (argv) => {
build(argv.publicPath);
});
const help = getHelp(yargs, ['serve']);
// `help` will contain yargs `$0 serve --help` output as a string
Available options:
normalize
: Normalizes the output, unifying things like terminal sizes, locale, $0 and ansi-codes (defaults totrue
)
NOTE: This package mutates the passed yargs
instance. If this is a problem, please consider using yargs/yargs instead.
$ npm test
$ npm test -- --watch
during development