2015-05-12 3 views
0

Я пишу тест для контроллера, используя angular.js + жасмин.Каков правильный способ тестирования этого контроллера?

Скажем, у меня есть контроллер:

angular.module('app').controller('HomePageCtrl', function($scope, Homepage, posts, topics, photos, sideBar) { 
    $scope.slide = (photos || [])[0]; 
    $scope.posts = Homepage.posts(posts); 
    $scope.topics = Homepage.topics(topics); 
    $scope.sideBar = sideBar; 
    $scope.template = '/templates/home-page.html'; 
}); 

Этот контроллер имеет только область видимости переменных назначения не функции. Как я могу написать тесты для этого контроллера? Мне нужно проверить, определены ли все переменные? Каждая переменная имеет правильное значение?

ответ

0

Вы можете использовать службу журнала (если это то, что вы имеете в виду), чтобы проверить, если ваши переменные не являются пустыми

angular.module('logExample', []) 
.controller('LogController', ['$scope', '$log', function($scope, $log) { 
    $scope.$log = $log; 
    $scope.message = 'Hello World!'; 
}]); 
+0

Я пишу блок-тест - я не понимаю, как с помощью службы журнала я могу проверить свой контроллер. – dbabaioff

0

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

angular.module('app').controller('HomePageCtrl', function($scope, Homepage, posts, topics, photos, sideBar) { 

    $scope.activate = function() { 
     $scope.slide = (photos || [])[0]; 
     $scope.posts = Homepage.posts(posts); 
     $scope.topics = Homepage.topics(topics); 
     $scope.sideBar = sideBar; 
     $scope.template = '/templates/home-page.html'; 
    } 

    $scope.activate(); 
}); 
Смежные вопросы