diff --git a/dist/npmts.plugins.d.ts b/dist/npmts.plugins.d.ts index 2ef5988..b42017b 100644 --- a/dist/npmts.plugins.d.ts +++ b/dist/npmts.plugins.d.ts @@ -2,8 +2,10 @@ import "typings-global"; export import beautylog = require("beautylog"); export declare let gulp: any; export declare let g: { + babel: any; + babelIstanbul: any; gFunction: any; - istanbul: any; + injectModules: any; mocha: any; replace: any; sourcemaps: any; diff --git a/dist/npmts.plugins.js b/dist/npmts.plugins.js index 7f73b5d..88e5825 100644 --- a/dist/npmts.plugins.js +++ b/dist/npmts.plugins.js @@ -3,8 +3,10 @@ require("typings-global"); exports.beautylog = require("beautylog"); exports.gulp = require("gulp"); exports.g = { + babel: require("gulp-babel"), + babelIstanbul: require("gulp-babel-istanbul"), gFunction: require("gulp-function"), - istanbul: require("gulp-istanbul"), + injectModules: require("gulp-inject-modules"), mocha: require("gulp-mocha"), replace: require("gulp-replace"), sourcemaps: require("gulp-sourcemaps"), diff --git a/dist/npmts.tests.js b/dist/npmts.tests.js index d8fe49c..69fc768 100644 --- a/dist/npmts.tests.js +++ b/dist/npmts.tests.js @@ -7,34 +7,26 @@ var npmts_promisechain_1 = require("./npmts.promisechain"); * * @returns {*} */ -var istanbul = function (configArg) { - npmts_promisechain_1.npmtsOra.text("Instrumentalizing transpiled JS..."); +var mocha = function (configArg) { + npmts_promisechain_1.npmtsOra.text("Instrumentalizing and testing transpiled JS"); + npmts_promisechain_1.npmtsOra.end(); // end npmtsOra for tests. var done = plugins.Q.defer(); var stream = plugins.gulp.src([plugins.path.join(paths.cwd, "dist/*.js")]) .pipe(plugins.g.sourcemaps.init()) - .pipe(plugins.g.istanbul()) // Covering files + .pipe(plugins.g.babelIstanbul()) + .pipe(plugins.g.babelIstanbul.hookRequire()) .pipe(plugins.g.sourcemaps.write()) - .pipe(plugins.g.istanbul.hookRequire()) // Force `require` to return covered files - .pipe(plugins.g.gFunction(function () { - plugins.beautylog.ok("JS has been instrumentalized to get test code coverage!"); - done.resolve(configArg); - }, "atEnd")); - return done.promise; -}; -/** - * - * @returns {*} - */ -var mocha = function (configArg) { - var done = plugins.Q.defer(); - npmts_promisechain_1.npmtsOra.end(); // end npmtsOra for tests. - var stream = plugins.gulp.src(["./test/test.js"]) - .pipe(plugins.g.mocha()) - .pipe(plugins.g.istanbul.writeReports()) // Creating the reports after tests ran - .pipe(plugins.g.gFunction(function () { - plugins.beautylog.ok("Tests have passed!"); - done.resolve(configArg); - }, "atEnd")); + .on("finish", function () { + plugins.gulp.src([plugins.path.join(paths.cwd, "dist/*.js")]) + .pipe(plugins.g.babel()) + .pipe(plugins.g.injectModules()) + .pipe(plugins.g.mocha()) + .pipe(plugins.g.babelIstanbul.writeReports()) + .pipe(plugins.g.gFunction(function () { + plugins.beautylog.ok("Tested!"); + done.resolve(configArg); + }, "atEnd")); + }); return done.promise; }; var coverage = function (configArg) { @@ -63,8 +55,7 @@ exports.run = function (configArg) { plugins.beautylog.log("-------------------------------------------------------\n" + "*************************** TESTS: ***************************\n" + "--------------------------------------------------------------"); - istanbul(config) - .then(mocha) + mocha(config) .then(coverage) .then(function () { done.resolve(config); diff --git a/package.json b/package.json index 83df346..3628fe2 100644 --- a/package.json +++ b/package.json @@ -36,11 +36,12 @@ "early": "^2.0.13", "esdoc": "^0.4.7", "gulp": "3.9.1", + "gulp-babel": "^6.1.2", + "gulp-babel-istanbul": "^1.4.0", "gulp-concat": "^2.6.0", "gulp-function": "^1.3.6", "gulp-if": "^2.0.1", - "gulp-istanbul": "^1.0.0", - "gulp-jsdoc3": "^0.3.0", + "gulp-inject-modules": "^1.0.0", "gulp-mocha": "^2.2.0", "gulp-replace": "^0.5.4", "gulp-sourcemaps": "^1.6.0", diff --git a/ts/npmts.plugins.ts b/ts/npmts.plugins.ts index 011375e..e5a532a 100644 --- a/ts/npmts.plugins.ts +++ b/ts/npmts.plugins.ts @@ -2,8 +2,10 @@ import "typings-global"; export import beautylog = require("beautylog"); export let gulp = require("gulp"); export let g = { + babel: require("gulp-babel"), + babelIstanbul: require("gulp-babel-istanbul"), gFunction: require("gulp-function"), - istanbul: require("gulp-istanbul"), + injectModules: require("gulp-inject-modules"), mocha: require("gulp-mocha"), replace: require("gulp-replace"), sourcemaps: require("gulp-sourcemaps"), diff --git a/ts/npmts.tests.ts b/ts/npmts.tests.ts index 8f7a251..41862e0 100644 --- a/ts/npmts.tests.ts +++ b/ts/npmts.tests.ts @@ -7,35 +7,26 @@ import {npmtsOra} from "./npmts.promisechain"; * * @returns {*} */ -let istanbul = function (configArg) { - npmtsOra.text("Instrumentalizing transpiled JS..."); +let mocha = function (configArg) { + npmtsOra.text("Instrumentalizing and testing transpiled JS"); + npmtsOra.end(); // end npmtsOra for tests. let done = plugins.Q.defer(); var stream = plugins.gulp.src([plugins.path.join(paths.cwd,"dist/*.js")]) .pipe(plugins.g.sourcemaps.init()) - .pipe(plugins.g.istanbul()) // Covering files + .pipe(plugins.g.babelIstanbul()) + .pipe(plugins.g.babelIstanbul.hookRequire()) .pipe(plugins.g.sourcemaps.write()) - .pipe(plugins.g.istanbul.hookRequire()) // Force `require` to return covered files - .pipe(plugins.g.gFunction(function(){ - plugins.beautylog.ok("JS has been instrumentalized to get test code coverage!"); - done.resolve(configArg); - },"atEnd")); - return done.promise; -}; - -/** - * - * @returns {*} - */ -let mocha = function (configArg) { - let done = plugins.Q.defer(); - npmtsOra.end(); // end npmtsOra for tests. - let stream = plugins.gulp.src(["./test/test.js"]) - .pipe(plugins.g.mocha()) - .pipe(plugins.g.istanbul.writeReports()) // Creating the reports after tests ran - .pipe(plugins.g.gFunction(function(){ - plugins.beautylog.ok("Tests have passed!"); - done.resolve(configArg); - },"atEnd")); + .on("finish",function(){ + plugins.gulp.src([plugins.path.join(paths.cwd,"dist/*.js")]) + .pipe(plugins.g.babel()) + .pipe(plugins.g.injectModules()) + .pipe(plugins.g.mocha()) + .pipe(plugins.g.babelIstanbul.writeReports()) + .pipe(plugins.g.gFunction(function(){ + plugins.beautylog.ok("Tested!"); + done.resolve(configArg); + },"atEnd")); + }); return done.promise; }; @@ -72,8 +63,7 @@ export let run = function(configArg) { "--------------------------------------------------------------" ); - istanbul(config) - .then(mocha) + mocha(config) .then(coverage) .then(() => { done.resolve(config);