2015-03-04 4 views
0

Я начал писать модульные тесты с использованием Jasmine для приложений с угловым JS и застревал при написании модульного теста контроллеру в модели, которая не имеет имени.Как протестировать анонимный контроллер

Как я могу создать экземпляр контроллера в модели и протестировать контроллер?

 angular.module('test',[]) 
      .controller('alpha', function($scope, $modal){ 
       $scope.openModal = function() { 
        $modal.open({ 
         templateUrl: 'template.html', 
         backdrop: true, 
         windowClass: 'content-modal hbox', 
         controller: function(
          $scope, 
          $modalInstance 
         ) { 
          $scope.test = function() { 
           //test 
          }  
         } 
        )); 
       } 

      }); 

Заранее спасибо.

+0

Это ПИ Bootstrap модальным? – cgTag

+0

Похож на фундамент Угловая модальная директива - http://pineconellc.github.io/angular-foundation/ – lwalden

+0

@MathewFoscarini да это пользовательский интерфейс Bootstrap Modal. – ram2013

ответ

0

Я бы предположил, что гораздо проще выполнить единичный тест, если вы не используете анонимную функцию для своего контроллера. Если вы просто напишете еще один полный контроллер, вы можете использовать его для своего модального теста и легко его протестировать.

Это говорит - вот несколько подходов к делать то, что вы хотите сделать: http://sirarsalih.com/tag/unit-testing-anonymous-javascript-functions/

+0

Спасибо @lwalden, это имеет смысл, но единственная проблема заключается в том, что в проекте много анонимных контроллеров с зависимостями от других контроллеров, которые невозможно легко перенести. – ram2013

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