Rewire packageを使用して単体テストに関連してモックを挿入しています。これを行うことにより、Rewire:指定された戻り値を返さずにこの関数を実行するにはどうすればいいですか?
var a = 10;
var b = 20;
function adder(){ //not exported
console.log(a);
console.log(b);
return a + b;
};
:私は私のモジュールでプライベート関数をテストすることができるように期待していた
30
40
undefined
私はこれを見つける:コンソールに次のログ
var rewire = require('rewire'),
md = rewire('./module'),
mock = {a: 30, b: 40},
cb = md.__get__('adder');
console.log(md.__with__(mock)(cb));
30
と40
のログには、adder()
がmock
で正常に呼び出されたと表示されているようです。
しかし、戻り値undefined
は、70
の代わりになるのはなぜですか?