私は、金属細工師のプラグインとそれに関連するテスト スイートを mocha で作成しています。
構成が不足している場合、プラグインは例外をスローする必要があります。
function plugin(config) {
...
return function(files, metalsmith, done) {
...
done(new Error("config error"));
}
}
そして私はこのようにモカでそれをテストしようとします:
describe('my plugin', function() {
it('should throw an exception', function(done) {
var metalsmith = Metalsmith('test/fixtures/basic');
metalsmith
.use(myplugin({
someconfig: {
}))
.build(function(err,files) {
assert(err);
done();
});
});
});
テストを実行すると、次の結果が得られます。
my plugin
✓ should throw an exception
1) should throw an exception
1 passing (31ms)
1 failing
1) my plugin should throw an exception:
Error: done() called multiple times
したがって、テストは問題ないようですが、どういうわけか別の時間に実行され、今回は失敗します...