2015-05-24 9 views
11

चमेली जासूस के आसपास मेरे सिर प्राप्त करने के लिए कोशिश कर रहा है, यह क्या अपने परीक्षण लग रहा है जैसे:एक जासूस की उम्मीद है लेकिन अपरिभाषित हो गया?

$scope.switchTurns = function() { 
    $scope.playerTurn = !$scope.playerTurn; 
    console.log($scope.centrePileCards.length); 
    if ($scope.playerTurn == 1) { 
     $scope.pickCard(); 
    } 
    } 

मेरे इकाई परीक्षण इस तरह दिखता है:

it('should pick one card',function(){ 
    var controller = createController(); 
    spyOn(scope,'pickCard') 
    scope.switchTurns(); 
    scope.playerTurn=1; 
    expect(scope.pickCard()).toHaveBeenCalled(); 

    }) 

मैं अब इस त्रुटि हो रही है:

Error : Expected a spy , but got undefined. 

सुझाव?

उत्तर

17

scope.pickCard() विधि का परिणाम है। आपके मामले में यह undefined है। आप जब आप spyOn उपयोग कर रहे हैं लिखना चाहिए:

expect(scope.pickCard).toHaveBeenCalled();

संबंधित मुद्दे