我有一个生成器功能,我正在尝试进行单元测试。我正在测试的函数也将生成器作为方法参数。
我可以运行mocha --harmony
所以它运行测试但是,我已经在我的测试文件中放了一个生成器函数,这将是我将传递给我正在测试的函数的函数,但是mocha会抛出一个错误,说它确实不理解我的测试文件中的*
。
例如,
function mytestgenerator() * {
return "next gen"
}
describe('my app', function () {
describe('important method', function () {
it('should return -1', function () {
var result = sut(mytestgenerator);
})
})
})
/Users/jonathan/Projects/myapp/test/index_spec.js:9
function mytestgenerator() * {
^
SyntaxError: Unexpected token *
答案 0 :(得分:2)
*
位于错误的地方for a generator function。
应该在function
关键字之后,在名称或参数之前。
function * mytestgenerator() {
return "next gen";
}
如果仍然无法识别,请确保您使用的是0.11或更高版本的节点,因为--harmony
在以前的版本中不包含生成器。