ジャスミンを使用していくつかの基本的なテストを行おうとしています。私は外部ライブラリを使用しています & 私がしようとしているのは、ライブラリ オブジェクト (d3) のメソッド呼び出しをスパイ/モックし、適切なメソッドが d3 で呼び出されることを確認することです。
var d3Spy = jasmine.createSpyObj('d3', ['select']);
spyOn(window, 'd3').andReturn(d3Spy);
expect(d3Spy.select).toHaveBeenCalled();
オブジェクトで 'select' が呼び出されると、このエラーが発生します。
TypeError: Object function () {
spyObj.wasCalled = true;
spyObj.callCount++;
var args = jasmine.util.argsToArray(arguments);
spyObj.mostRecentCall.object = this;
spyObj.mostRecentCall.args = args;
spyObj.argsForCall.push(args);
spyObj.calls.push({object: this, args: args});
return spyObj.plan.apply(this, arguments);
} has no method 'select'
私は何を間違っていますか?