Мой жасмин блок выглядит следующим образомМодульное тестирование контроллеров Угловая JS тест
describe('controllers', function() {
'use strict';
beforeEach(module('myapp.controllers'));
angular.mock.module('myapp.controllers', function ($provide) {
$provide.value('$localStorage', $localStorage);
});
it('should have a creationController', inject(function ($controller, _$rootScope_, localize) {
var scope = _$rootScope_.$new();
var localize = localize;
var myCtrl1 = $controller('creationController', {
$scope: scope,
localize: localize
});
expect(myCtrl1).toBeDefined();
}));
});
Когда я пытаюсь выполнить тест я получаю следующую ошибку
Error: [$injector:unpr] http://errors.angularjs.org/1.2.20/$injector/unpr?p0=localizeProvider%20%3C-%20localize
Существует зависимость называется " локализовать ", который используется в контроллере. Однако я не могу это ввести в этот модульный тест.
Любая идея, как я могу решить эту проблему?
Вы пытались сделать beforeEach (модуль ('myapp.controllers', ''))? –
@JorgeSainz попробовал ваше предложение, и теперь я получаю следующее сообщение об ошибке \t Ошибка: [$ injector: modulerr] http://errors.angularjs.org/1.2.20/$injector/modulerr?p0=localize&p1=Error%3A% 20% 5B% 24injector% 3Anomod% 5D% 20http% 3A% 2F% 2Ferrors.angularjs.org% 2F1.2.20% 2F% 24injector% 2Fnomod% 3Fp0% 3Dlocalize% 0A% 20% 20% 20% 20at% 20http% 3A% 2F% 2Flocalhost% 3A9876% 2Fbase% 2Fresources% 2Flibs% 2Fangular% 2Fangular.min.js% 3F89bd1c3ea71433b7675321fdede5e2f2323e15a0% 3A20% 0A% 20% 20% 20% 20at% 20http% 3A% 2F% 2Flocalhost% 3A9876% 2Fbase% 2Fresources% 2Flibs% 2Fangular% 2Fangular.min.js% 3F89bd1c3ea71433b7675321fdede5e2 – Jani
Можете ли вы создать кодировщик или sth? У меня есть пример использования жасмина 2.0 и углового 1.2.20 в кодефене, так что вы можете его разветвить: http://codepen.io/anon/pen/apAue –