Я использую Карму и Жасмин для проверки контроллера.Мой контроллер и компонент записаны в двух файлах:
module.component('A', {
templateUrl: 'template.html',
controller: 'YourController'
});
В другом файле я определил контроллер:
function() {
'use strict';
angular.module('app').controller('YourController',
YourController);
YourController.$inject = [ '$scope', '$http', '$window',
'$rootScope' ];
function YourController($scope, $http, $window, $rootScope) {
function yourcontrollerfunction() {
}
yourcontrollerfunction();
}
})();
Коды работают нормально.Однако, когда я использую Карму и Жасмин для тестирования контроллера, я всегда получаю сообщение об ошибке, что YourController не определен.Я не понимаю почему.Пожалуйста, дайте мне любые намеки.Спасибо!
describe('test1', function () {
var $componentController;
beforeEach(module('app'));
beforeEach(angular.mock.inject(function(_$componentController_) {
$componentController = _$componentController_;
}));
it('test controller', function () {
var ctrl = $componentController('A',null);
});
}); // end of describe