2015-05-24 15 views
11

Đang cố gắng để có được đầu của tôi xung quanh gián điệp hoa nhài, đây là những gì thử nghiệm của tôi trông giống như:dự kiến ​​là gián điệp nhưng không xác định?

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

kiểm tra đơn vị của tôi trông như thế này:

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

    }) 

Tôi nhận được lỗi này ngay bây giờ:

Error : Expected a spy , but got undefined. 

Đề xuất?

Trả lời

17

scope.pickCard() là kết quả của phương pháp. Trong trường hợp của bạn, nó là undefined. Khi bạn đang sử dụng spyOn bạn nên viết:

expect(scope.pickCard).toHaveBeenCalled();

Các vấn đề liên quan