【发布时间】:2017-02-03 22:25:49
【问题描述】:
我正在尝试将 mocha 添加到现有项目中。我有以下测试只是为了把东西放在一起......
assert = require('assert');
describe 'Array', ->
describe '#indexOf()', ->
it 'should return -1 when the value is not present', ->
assert.equal(-1, [1,2,3].indexOf(4));
选项...
--compilers coffee:coffee-script/register
然后我运行mocha --opts ./mocha.opts src/test/coffee/test/test.coffee 我看到了
1 次通过(6 毫秒)
现在我尝试创建一个运行器文件来处理
globFlat = require('glob-flat');
Mocha = require('mocha');
mocha = new Mocha();
files = globFlat.sync([
'src/test/coffee/test/test.coffee'
]);
mocha.addFile file for file in files
mocha.run();
然后运行mocha --opts ./mocha.opts src/test/mocha/mocha-runner.coffee 我明白了
0 传递(0ms)
那么为什么它没有找到测试呢?
更新
我还将所有内容都转换为 JS,以确保这不是 CS 的问题,而且我得到了同样的东西......
require('coffee-script');
var globFlat = require('glob-flat');
var Mocha = require('mocha');
var mocha = new Mocha();
mocha.addFile('src/test/coffee/test/test.js');
runner = mocha.run();
console.log("Done");
它是这样运行的......
mocha src/test/mocha/mocha-runner.js
Done
0 passing (0ms)
更新 2
好吧,看来我应该使用 node 而不是 mocha 来运行它。这会带来一个问题,因为 .js 版本可以工作,但 .coffee 版本会引发错误...
(function (exports, require, module, __filename, __dirname) { require 'coffee-script';
^^^^^^^^^^^^^^^
SyntaxError: Unexpected string
因为节点无法识别coffeescript
【问题讨论】:
标签: javascript coffeescript mocha.js