sinon.js で window.document をスパイしようとしています。私がすることはこれです:
var document = {
getElementById = function() {}
}
sinon.spy(document, "getElementById").withArgs("foo").returnValues = ["bar"];
この呼び出しに期待することは次のとおりです。document.getElementById が引数「foo」で呼び出された場合、関数は「bar」を返す必要があります。私のエラーは何ですか?
このように getElementById を自分で定義すると、期待される結果が得られます。
document.getElementById = function(param) {
if (param === "foo") return "bar";
}