为gulp-jasmine

时间:2016-02-02 23:43:41

标签: javascript node.js jasmine gulp

我正在尝试使用使用peg解析器的jasmine对一些Javascript代码进行单元测试。 peg解析器是在构建时构建的。

不幸的是,我还没有找到如何告诉jasmine动态构建的解析器的位置。

到目前为止,我已经:

gulp.task('parser', () => {
    return gulp.src("src/parser.peg")
        .pipe(peg())
        .pipe(gulp.dest(".obj"))
});

gulp.task('test', ["parser"], () => {
    return gulp.src(["tests/**/*.js", "src/**/*.js", ".obj/parser.js"])
        .pipe(jasmine())
});

现在,在测试运行时,解析器已正确构建并放入.obj;但它不在模块路径上,因此测试加载实际代码,实际代码尝试import parser from "parser",测试失败。

我可以更改实际代码以导入../obj/parser而不是parser,但这当然会在生产中失败。我需要以某种方式告诉jasmine在.obj中找到模块。怎么样?

0 个答案:

没有答案