UNPKG

definition-tester

Version:
85 lines 2.73 kB
'use strict'; var os = require('os'); var path = require('path'); var opt = require('optimist'); var Promise = require('bluebird'); var findup = require('findup-sync'); var TestRunner_1 = require('./test/TestRunner'); Promise.longStackTraces(); var testerPkgPath = path.resolve(findup('package.json', { cwd: process.cwd() })); var optimist = opt(process.argv); optimist.boolean('single-thread'); optimist.boolean('changes'); optimist.default('changes', false); optimist.boolean('dry'); optimist.default('dry', false); optimist.boolean('headers'); optimist.default('headers', true); optimist.boolean('tests'); optimist.default('tests', true); optimist.boolean('lint'); optimist.default('lint', false); optimist.boolean('tscparams'); optimist.default('tscparams', false); optimist.default('print-files', false); optimist.default('print-refmap', false); optimist.string('path'); optimist.default('path', process.cwd()); optimist.string('tsc-path'); try { var tscDir = path.dirname(require.resolve('typescript')); var tscPath = path.join(tscDir, 'tsc.js'); optimist.default('tsc-path', tscPath); } catch (e) { } optimist.boolean('debug'); optimist.describe('help', 'print help'); optimist.alias('h', 'help'); var argv = optimist.argv; if (argv['debug']) { var sms = void 0; try { sms = require('source-map-support'); } catch (e) { } if (sms) { sms.install(); } Promise.longStackTraces(); } var dtPath = path.resolve(argv['path']); var cpuCores = os.cpus().length; if (argv.help) { optimist.help(); process.exit(0); } Promise.onPossiblyUnhandledRejection(function (reason) { console.error('Error: Promise.possiblyUnhandledRejection:'); console.dir(reason); throw reason; }); var testFull = (process.env['TRAVIS_BRANCH'] ? /\w\/full$/.test(process.env['TRAVIS_BRANCH']) : false); new TestRunner_1.default({ testerPath: path.dirname(testerPkgPath), dtPath: dtPath, concurrent: (argv['single-thread'] ? 1 : Math.round(cpuCores * .75)), tscPath: argv['tsc-path'], tslintConfig: path.join(path.dirname(testerPkgPath), 'conf', 'tslint.json'), changes: (testFull ? false : argv['changes']), tests: argv['dry'] ? false : argv['tests'], lint: argv['dry'] ? false : argv['lint'], headers: argv['dry'] ? false : argv['headers'], tscparams: argv['dry'] ? false : argv['tscparams'], debug: argv['debug'], printFiles: argv['print-files'], printRefMap: argv['print-refmap'] }).run().then(function (success) { if (!success) { process.exit(1); } }).catch(function (err) { throw err; }); //# sourceMappingURL=index.js.map