Browse Source

Changed how Node.js testing is executed from test-node to test:node.

Szymon Kupś 9 years ago
parent
commit
50edaa2dcc
1 changed files with 18 additions and 23 deletions
  1. 18 23
      dev/tasks/test/tasks.js

+ 18 - 23
dev/tasks/test/tasks.js

@@ -12,7 +12,6 @@ const filter = require( 'gulp-filter' );
 const sinon = require( 'sinon' );
 const devTools = require( '../dev/utils/tools' );
 const semver = require( 'semver' );
-const minimist = require( 'minimist' );
 const buildUtils = require( '../build/utils' );
 
 /**
@@ -20,29 +19,18 @@ const buildUtils = require( '../build/utils' );
  *
  * To run tests under node:
  *
- *		gulp node-test
+ *		gulp test:node
  *
  * To run build before testing:
  *
- *		gulp node-test --build
+ *		gulp test:node:build
  *
  * To run testing with code coverage:
  *
- * 		gulp node-test --coverage
+ * 		gulp test:node:coverage
  */
 module.exports = () => {
 	const ignoreRegexp = /\/\* ?bender-tags:.*\bbrowser-only\b.*\*\//;
-	const options = minimist( process.argv.slice( 2 ), {
-		boolean: [
-			'coverage',
-			'build'
-		],
-
-		default: {
-			coverage: false,
-			build: false
-		}
-	} );
 
 	// Inject globals before running tests.
 	global.should = chai.should;
@@ -52,12 +40,22 @@ module.exports = () => {
 	global.bender = { model: {}, view: {} };
 
 	const tasks = {
+
+		/**
+		 * Is set to `true` when code coverage report will be displayed.
+		 *
+		 * @type {Boolean}
+		 */
+		coverage: false,
+
 		/**
 		 * Prepares files for coverage report.
 		 *
 		 * @returns {Stream}
 		 */
 		prepareCoverage() {
+			tasks.coverage = true;
+
 			return gulp.src( 'build/cjs/ckeditor5/**/*.js' )
 				.pipe( istanbul() )
 				.pipe( istanbul.hookRequire() );
@@ -92,7 +90,7 @@ module.exports = () => {
 				.pipe( tasks.skipManual() )
 				.pipe( tasks.skipIgnored() )
 				.pipe( mocha( { reporter: 'progress' } ) )
-				.pipe( options.coverage ? istanbul.writeReports() : buildUtils.noop() );
+				.pipe( tasks.coverage ? istanbul.writeReports() : buildUtils.noop() );
 		},
 
 		/**
@@ -117,13 +115,10 @@ module.exports = () => {
 		}
 	};
 
-	gulp.task( 'test-node:coverage', [ 'build:js:cjs' ], tasks.prepareCoverage );
-
-	if ( options.coverage ) {
-		gulp.task( 'test-node', [ 'build:js:cjs', 'test-node:coverage' ], tasks.testInNode );
-	} else {
-		gulp.task( 'test-node', options.build ? [ 'build:js:cjs' ] : [], tasks.testInNode );
-	}
+	gulp.task( 'test:node:pre-coverage', [ 'build:js:cjs' ], tasks.prepareCoverage );
+	gulp.task( 'test:node', tasks.testInNode );
+	gulp.task( 'test:node:build', [ 'build:js:cjs' ] , tasks.testInNode );
+	gulp.task( 'test:node:coverage', [ 'build:js:cjs', 'test:node:pre-coverage' ], tasks.testInNode );
 
 	return tasks;
 };