Meteor アプリでメソッドを単体テストしようとしています。私の簡単な方法は次のようになります。
function hello(arg, cb) {
console.log('-=> arg: ' + arg);
seTimeout(function() {
cb(null, 'hello! ' + arg);
}, 3000);
}
そして私のテストは
it('should say hello', function () {
var syncHello = Meteor.wrapAsync(hello);
console.log(JSON.stringify('-=> async hello: ' + hello));
console.log(JSON.stringify('-=> sync hello: ' + syncHello));
var resp = syncHello('joe');
expect(resp).toEqual('hello! joe')
})
しかし、テストを実行すると、syncHello is undefined
. Meteor.wrapAsync
単体テスト中に が undefined を返す理由を知っていれば非常に役に立ち、この関数を同期的に実行するのに役立ちます。