使用参数为独立JavaScript函数创建间谍

时间:2014-06-12 09:50:48

标签: javascript angularjs jasmine

为带有参数的独立JavaScript函数创建间谍

这里函数getID是带参数的,我创建了spy并调用了getID函数并得到了传递

我不知道如何使用参数创建间谍

JS

function school(name, age, rollno)  {
    // do something
}

function getID() {
    //do something
}

茉莉

var school,
      getID,
      myCtrl;

 beforeEach(function ($controller, $rootScope) {
    scope = $rootScope.$new();
    rootScope = $rootScope;

    getID= jasmine.createSpy('getID');  // this is work fine
    school= jasmine.createSpy('school'); // but this is not working 

    myCtrl = $controller('myCtrl', {

      },
      $scope: scope,
    });

  });

it('getID', function() {            // success
    getID();
     expect(getID).toHaveBeenCalled();

});

it('school', function() {         // gets failed
    school();
     expect(school).toHaveBeenCalled();

});

请帮助我,解决这个问题

1 个答案:

答案 0 :(得分:0)

你在测试什么 - Jasmine有间谍功能吗?

你创造了间谍,称之为并期待间谍被召唤?这些测试的逻辑出了点问题。