gulp.task( 'test:unit', 'run unit tests', function(done) { var argv = require('yargs') .default('grep', null, 'test grep') .default('reporter', 'nyan', 'test reporter') .argv; gulp.src(['./**/tests/unit/*.spec.js']) .pipe(mocha({ grep: argv.grep, reporter: argv.reporter, timeout: 60000 })) .on('end', done); } );
parseCommandLine() { let options = this._yargs(process.argv).default('windowsize','800x600').wrap(100); options.usage('Electron command line'); options.alias('ws', 'windowsize').string('ws').describe('ws','set window size (Ex: 800x600)'); options.alias('d', 'debug').boolean('1').describe('1', 'Autostart dev tools'); options.alias('u', 'userdata').string('u').describe('u', 'set userdata directory'); options.alias('v', 'version').boolean('v').describe('v', 'Print the version.'); options.alias('h', 'help').boolean('h').describe('h', 'Print this usage message.'); this._args = options.argv; if (this._args.help) { process.stdout.write(options.help()); process.exit(0); } if (this._args.version) { process.stdout.write(`Electron Version : ${process.versions.electron}\n`); process.stdout.write('GLBrowser Version : 0.0.1\n'); process.exit(0); } }
yargs .command('init', 'scaffold a new site') .command('new', 'create new content') .command('build', 'build your site', commandYargs => commandYargs.option('clean', { alias: 'c', default: false, }) ) .command('clean', 'clean destination folder') .command('serve', 'create a simple web server') .command('watch', 'create a server that builds your site lazily') .option('browser-sync', { alias: 'bs', description: 'automatic page refresh with browsersync', boolean: true, }) .option('incremental', { description: 'only build files that have changed', boolean: true, default: true, }) .option('version', { alias: 'v', description: 'installed version', boolean: true, }) .help('help') .default('help');
yargs .option('campaign', { alias: ['c', 'ac', 'accessCampaignId'] }) .option('granter', { alias: ['g', 'u', 'user'] }) .option('amount', { alias: ['n'], type: 'number', default: 1 }) .option('prefix', { alias: ['p'] }) .default(['campaign', 'granter', 'label']) .check(argv => { if (argv.prefix && argv.prefix.length >= grantsLib.VOUCHER_CODE_LENGTH) { return `Check --prefix. "${argv.prefix}" too long to generate voucher codes.` } if (argv.prefix && argv.prefix.match(/[^123456789ABCDEFGHKLMRSTUWXYZ]+/)) { return `Check --prefix. "${argv.prefix}" contains invalid chars.` } if (argv.amount < 1) { return `Check --amount. Should be at least 1.` } return true }) .help() .version()
gulp.task( 'adWords:campaignService:query', 'queries Google AdWords campaigns', function(cb) { var argv = require('yargs') .default( 'clientCustomerId', process.env.ADWORDS_CLIENT_CUSTOMER_ID, 'clientCustomerId of account' ) .default('validateOnly', false, 'validate only') .argv; var AdWords = require('..'); var service = new AdWords.CampaignService() .setValidateOnly(argv.validateOnly) .setVerbose(true); var query = 'SELECT Id, Name, Status ORDER BY Name'; service.query(argv.clientCustomerId, query, function(err, results) { if (err) return cb(err); else console.log(JSON.stringify(results, null, 2)); return cb(err); }); } );
gulp.task( 'test:integration', 'run integration tests', function(done) { var argv = require('yargs') .default('grep', null, 'test grep') .default('reporter', 'nyan', 'test reporter') .argv; gulp.src(['./**/tests/integration/*.spec.js']) .pipe(mocha({ grep: argv.grep, reporter: argv.reporter, timeout: 60000 })) .on('end', done); } );
yargs .option('campaign', { alias: ['c', 'ac', 'accessCampaignId'] }) .option('granter', { alias: ['g', 'u', 'user'] }) .option('amount', { alias: ['n'], type: 'number', default: 1 }) .option('prefix', { alias: ['p'] }) .default(['campaign', 'granter', 'label']) .check(argv => { if (argv.prefix && argv.prefix.length >= grantsLib.VOUCHER_CODE_LENGTH) { return `Check --prefix. "${argv.prefix}" too long to generate voucher codes.` } if (argv.prefix && argv.prefix.match(/[^123456789ABCDEFGHKLMRSTUWXYZ]+/)) { return `Check --prefix. "${argv.prefix}" contains invalid chars.` } if (argv.amount < 1) { return `Check --amount. Should be at least 1.` } return true }) .help() .version()