Тестирование контроллеров Angular: контроллер не определен

Мой вопрос очень похож на Тестирование контроллеров Angular, определенных как angular.module (' myApp '). controller (. Вместо того, чтобы угонять этот вопрос, я подумал, что задам свой отдельно. Когда я использую предложенный ответ в форме:

describe('evCalcApp controllers', function(){
  beforeEach(module('evCalcApp.controllers'));
    var scope, ctrl
    beforeEach(inject(function($controller, $rootScope) {
      scope = $rootScope.$new();
      ctrl = $controller('MyMileageCalcController', {$scope: scope});
    }));

Это отлично работает для первого контроллера. Однако, если бы вы тестировали более одного контроллера в одном файле, как бы вы внедрили второй контроллер (назовем его просто MyCtrl2)?


person Steve Ross    schedule 10.07.2013    source источник


Ответы (1)


Так же, как и последний раз

describe('evCalcApp controllers', function(){
  beforeEach(module('evCalcApp.controllers'));
    var scope, ctrl, ctrl2;
    beforeEach(inject(function($controller, $rootScope) {
      scope = $rootScope.$new();
      scope2 = $rootScope.$new();
      ctrl = $controller('MyMileageCalcController', {$scope: scope});
      ctrl2 = $controller('MyCtrl2', {$scope: scope2});
    }));
person rooftop    schedule 10.07.2013
comment
Большой! Спасибо. Таким образом, похоже, что он не может находиться внутри блока describe для данного контроллера, а должен находиться внутри внешнего describe для модуля. Верно? - person Steve Ross; 11.07.2013