2015-02-09 3 views
0

Как бы вы протестировали эту директиву по угловым испытаниям?проверка угловой директивы js?

$scope.cancel = function() { 
      $('#pp_bsktexit').modal('show'); 
}; 

что-то вроде этого, я могу проверить, не кажется слишком:

вар nextScreenPath = 'C_HIST';

$scope.goBack = function() {     
      //sessionService.save($scope.sessionData);    
      $location.path(nextScreenPath); 
} 

и тест:

it('should return location path as nextScreenPath', function(){ 
      var nextScreenPath = 'C_HIST'; 
      expect($location.path()).toEqual(''); 
      scope.goBack(); 
      expect($location.path()).toEqual('/' + nextScreenPath); 

}); 

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

ответ

0

Так что кажется, что вы используете jQuery напрямую, что делает его проблематичным для насмешек.

Вместо этого вы должны использовать angular.element, который будет автоматически использовать jQuery за кулисами, если он существует.

Затем в тестовых директив, как правило, используют шпионов:

spyOn (элемент, '').

Существует несколько методов spyOn для возврата фиксированного значения или вызова поддельной функции. Взгляните на документацию на жасмин для шпионов:

http://jasmine.github.io/2.0/introduction.html#section-Spies

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