blob: ca847c6f1eb2812420c069fe9d968471bb4717c9 [file] [log] [blame]
'use strict';
/**
* Command module for "init" command
*
* @private
* @module
*/
const fs = require('fs');
const path = require('path');
const mkdirp = require('mkdirp');
exports.command = 'init <path>';
exports.description = 'create a client-side Mocha setup at <path>';
exports.builder = yargs =>
yargs.positional('path', {
type: 'string',
normalize: true
});
exports.handler = argv => {
const destdir = argv.path;
const srcdir = path.join(__dirname, '..', '..');
mkdirp.sync(destdir);
const css = fs.readFileSync(path.join(srcdir, 'mocha.css'));
const js = fs.readFileSync(path.join(srcdir, 'mocha.js'));
const tmpl = fs.readFileSync(
path.join(srcdir, 'lib', 'browser', 'template.html')
);
fs.writeFileSync(path.join(destdir, 'mocha.css'), css);
fs.writeFileSync(path.join(destdir, 'mocha.js'), js);
fs.writeFileSync(path.join(destdir, 'tests.spec.js'), '');
fs.writeFileSync(path.join(destdir, 'index.html'), tmpl);
};