2015-05-24 20 views
11

, bu benim test göründüğünü gibi:bir casus bekleniyor ama undefined var? yasemin casuslar etrafında başım almaya çalışırken

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

Birimime testi şöyle görünür:

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

    }) 

Şimdi bu hatayı alıyorum:

Error : Expected a spy , but got undefined. 

Öneriler?

cevap

17

scope.pickCard() yönteminin bir sonucudur. Sizin durumunuzda undefined. Eğer spyOn kullanırken yazman gereken:

expect(scope.pickCard).toHaveBeenCalled();