sindresorhus / gulp-mocha

Run Mocha tests
MIT License
375 stars 91 forks source link

TypeScript support #199

Open MagicLegend opened 4 years ago

MagicLegend commented 4 years ago

This is more for documentation, and I think could be included in the readme of this plugin for other people.

Based on the information found here (archived), I figured out that the transpilation of ts to js is not neccisary when using this plugin. By passing the require argument to mocha, one can directly pass it ts. It would look as follows in your gulpfile.js:

const gulp = require('gulp');
const mocha = require('gulp-mocha');

gulp.task('mocha', () => {
    return gulp.src('test/**/*.test.ts').pipe(mocha({ require: 'ts-node/register', reporter: 'nyan' }));
});

Obviously this also requires the ts-node npm package.

This saves a transpilation step, and how to use the VSCode debugger directly on the ts files is described in the mentioned article (also handy trick!). I hope this helps someone :-)