Как настроить gulp-mocha со следующей конфигурацией mocha.opts?

Я пытаюсь запустить мокко с глотком с конфигурацией, существовавшей ранее. moch.opts имеет следующую строку.

--timeout 999999
--ui tdd
--full-trace
--recursive
--compilers js:babel-register

как их добавить сюда:

    gulp.task('test', function() {
        return gulp.src('sampleTest/*.js', { read: false })
            .pipe(mocha());
    });

3 ответа

Опции передаются непосредственно в двоичный файл mocha, поэтому вы можете использовать любые его параметры командной строки в форме camelCased. это ссылка на документ

gulp.task('test', ['compile'], function() {
return gulp.src([], { read: false })
    .pipe(mocha({
        timeout: 999999,
        fullTrace: true,
        reporter: 'min'
    }))
    .on('error', gutil.log);
});

Я считаю, что вы можете создавать свойства объекта параметров, передаваемого gulp-mocha или вы можете просто прочитать файл опций. В моем случае я не хотел дублировать такие вещи, как --recursive или же --require test/_init.js, но я хотел переопределить репортер, поэтому я использую код, показанный ниже:

gulp.task('test', ['compile'], function() {
    return gulp.src([], { read: false })
        .pipe(mocha({
            opts: 'test/mocha.opts',
            reporter: 'min'
        }))
        .on('error', gutil.log);
});

Вы можете изменить это так, чтобы он не принимал путь по умолчанию для тестирования файлов (например, test/*.js), но в моем простом случае мне даже не нужно было проходить путь к мокко. Я просто использую gulp, чтобы вызвать его (как будто я запускал в командной строке что-то вроде mocha --opts test/mocha.opts --reporter min)

Добавить вызов setTimeout после вызова мокко

.pipe(mocha(),setTimeout(function() {

}, 999999))
Другие вопросы по тегам