Где я могу упомянуть исходные js-файлы, которые нужно проверить в gulp-jasmine?

Вот то, что я использую на данный момент.

gulp.task('test', function () {
    return gulp.src([ './app/spec/*.js'])
    .pipe(jasmine());
});

Но в случае ворчания, вы можете упомянуть исходные файлы, как это

jasmine: {
        src: 'js/**/*.js',
        options: {
            specs: 'spec/**/*.js'
        }
    }
  1. Где я могу указать расположение исходных файлов в случае gulp?
  2. Другая проблема заключается в том, что gulp запускает тестовые примеры только из первого файла, поскольку на данный момент все они терпят неудачу и не попадают во вторые файлы в папке spec.

1 ответ

Для выпуска 2 я вижу этот вариант gulp-jasmine:

errorOnFail

Default: true

Stops the stream on failed tests.
.pipe(jasmine({errorOnFail: false})) 

следует запустить остальные тесты.

Проблема 1: Есть несколько способов указать несколько источников для gulp.src, таких как

return gulp.src([ './app/spec/*.js', 'spec/**/*.js']) 

или установите переменную:

var testSources = ['./app/spec/*.js', 'spec/**/*.js'];
return gulp.src(testSources)

или я использую что-то вроде этого:

var paths = {
  html: {
    src: "home.html",
    temp: "./temp",
    deploy: "./deploy/html"
  },
  sass: {
    src: "./src/styles/scss/**/*.scss",
    stylesFile: "./src/styles/scss/styles.scss"
  },
  css: {
    src: "./temp/css/styles.css",
    temp: "./temp/css",
    deploy: "./deploy/css"
 },
  js: {
    src: "./src/js/**/*.js",
    temp: "./temp/js",
    deploy: "./deploy/js"
  }
};

а затем использовать:

function reloadJS() {
  return gulp.src(paths.js.src)
    .pipe(sourcemaps.init())
    .pipe(sourcemaps.write("../sourcemaps", {includeContent:false,sourceRoot:"/js"}))
    .pipe(gulp.dest(paths.js.temp))
    .pipe(reload({ stream:true }));
}

Кстати, когда в SO пишут два вопроса, на SO это не одобряется.

Другие вопросы по тегам