2016-04-22 11 views
0

Sinon stub.returns()メソッドは、ドキュメントに従って正しい応答を返しません。なぜどんなアイデア?Sinon stub.returns()が正しい値を返さない

あなたが stubThisを起動する必要が
stubThis = sinon.stub().returns('123'); 

console.log(stubThis); // returns stub, but expect it to return 123 

答えて

0

console.log(stubThis());

あなたはsinon.stub()呼び出すときにあなたが戻ってundefinedを返す関数を得る:

var stub = sinon.stub(); 
stub() // return undefined 

あなたがその機能に.returnsメソッドを呼び出すと、あなたがその指定元の関数に戻す:

stub.returns('123') === stub; // true 
stub() // now returns '123' 

したがって、コード上のstubThis'123'ではありません。戻り値が'123'の関数です。 stubThisを呼び出すだけです:

console.log(stubThis()); // logs '123' 
関連する問題