2016-07-27 3 views
0

Я пытаюсь настроить модульные тесты Karma, и в своем тесте я хочу установить переменную области видимости, чтобы я мог запустить тест. Я получаю сообщение об ошибке Не могу установить свойство «expandSeries» неопределенного.AngularJS задает переменные сферы в задаче Karma

Ниже приведен мой код. Что я делаю не так?

describe('FormController', function() { 
    beforeEach(module('userFormApp')); 
    var $controller; 
    var $rootScope; 

    beforeEach(inject(function (_$controller_, _$rootScope_) { 
    $controller = _$controller_; 
    $rootScope = _$rootScope_; 
    })); 

    describe('$scope.getImageSrc', function() { 
    var $scope, controller; 

    beforeEach(function() { 
     $scope = $rootScope.$new();   
     controller = $controller('FormController', { $scope: $scope}); 
    }); 

    $scope.expandedSeries = 1; 

    it('sets variables ', function() { 
     expect($scope).toBeDefined(); 
     expect($scope.expandedSeries).toBeDefined(); 
     expect($scope.expandedSeries).toEqual(1); 
    }); 
}); 

ответ

1

Мгновенное действие переменной перед каждым, чтобы тестовые примеры могли получить ее при запуске.

describe('$scope.getImageSrc', function() { 
var $scope, controller; 

beforeEach(function() { 
    $scope = $rootScope.$new();   
    controller = $controller('FormController', { $scope: $scope}); 
$scope.expandedSeries = 1; 
}); 

    it('sets variables ', function() { 
    expect($scope).toBeDefined(); 
    expect($scope.expandedSeries).toBeDefined(); 
    expect($scope.expandedSeries).toEqual(1); 
}); 

});

Смежные вопросы