ローカルメソッド(メソッド1)が別のメソッド(メソッド2)から呼び出されているかどうかをテストしようとしています。私はこのようなものを試しましたが、method1()は依然としての元の定義を持っています。Jasmineを使用して、ローカルメソッドが呼び出されたかどうかをチェックする方法?
var ClassA = function() {
var method1 = function() {
console.log('method1');
};
var method2 = function() {
method1();
};
return {method1: method1, method2: method2}
}
テストケース:任意の成功なしにmethod1に上書きしようとしました
it("should call method1 when method2 is called", function() {
var objectA = new ClassA();
spyOn(objectA, 'method1').andCallThrough;
objectA.method2();
expect(objectA, 'method1').toHaveBeenCalled();
});
:あなたは新しいにClassA(呼び出すとき
objectA.method1 = jasmine.createSpy('aSpy').andCallThrough();
コードはOKですが、 'spyOn(objectA、 'method1')。andCallThrough;'行に '()'がありません。 –