如何使用es6语法编写的gulp运行hapi-lab测试

时间:2016-10-22 18:03:45

标签: gulp ecmascript-6 hapijs babel lab

我正在创建一个hapi api种子项目。我选择在项目源中使用es6语法。我使用hapi-lab作为我的测试框架。它集成了,我可以通过package.json文件中的引用使用'npm test'来运行它。

"scripts": {
    "test": "lab -T ./node_modules/lab-babel -I __core-js_shared__"
  }
  ...
  //from the cmd line
  npm test

这很好用 - 虽然我在测试中使用了es6语法:

import Server from '../../src/server.js';
import Code from 'code';
import Lab from  'lab';

我希望能够从gulp运行测试。我正在使用'gulp-lab'。它开始运行但随后抛出错误。

SyntaxError: Unexpected reserved word 

它指向导入的使用 - 我将其作为es6。所以我尝试将测试js通过babel传送到实验室(见下文)。不幸的是我得到了同样的错误。

以下是我的gulp文件的相关部分 - 有任何建议吗?

import gulp from 'gulp';
import babel from 'gulp-babel';
import lab from 'gulp-lab';   

    gulp.task('test', function () {
        return gulp.src('test/**/*.js')
            .pipe(babel())
            .pipe(lab());
       });

我可以发布gulp文件的其余部分,如果它有助于了解构建的工作原理。

这是我的.babelrc文件:

//use es2015 preset to convert es6 js to es5 equivalent
{
    "presets": [ "es2015" ],
    'plugins': [
        'transform-es2015-template-literals',
        'transform-es2015-block-scoping'
    ]
}

0 个答案:

没有答案