Я пытаюсь проверить контроллер.Тестирование угловых контроллеров, которые имеют много зависимостей
someModule.controller('MyController', function($rootScope, $scope, dep1, dep2) {
...
$scope.aMethod = function() {
...
}
function bMethod() {
...
}
...
}]);
И я определяю мой тест так:
beforeEach(inject(function ($controller, $rootScope) {
scope = $rootScope.$new();
console.log($controller);
MyController = $controller('MyController', {
$rootScope : $rootScope,
$scope: scope
});
console.log('Some debug message');
console.log(MyController);
}));
И я получаю этот выход:
LOG: function (expression, locals, later, ident) { ... }
LOG: 'Some debug message'
LOG: {}
Даже если я кладу в dep1
и dep2
я получаю те же результаты. Таким образом, scope
и rootScope
должны присутствовать, иначе я получаю сообщение об ошибке при его запуске.
Я не уверен, почему это не работает, поскольку последний выход пуст, поэтому в контроллере нет никаких функций, что неверно.
Я хочу проверить bMethod
как минимум, но, похоже, он не правильно создает мой контроллер.
«Я должен иметь два я добавил, что именно поэтому они там» ... К сожалению, я не уверен, что я понять проблему. Можете ли вы сформулировать это более четко? – mgilson
Что вы пытаетесь? –
@GonzaloPincheiraArancibia - я добавил более подробно. В основном в beforeIach объект MyController не имеет свойств или функций. –