Angular JS Erreur: [$injecteur:nomod] Module " portfolioMockupApp.services " n'est pas disponible
Que j'essaie d'écrire des tests unitaires avec le Karma et que je reçois l'erreur suivante:
PhantomJS 1.9.8 (Mac OS X) ERREUR
Erreur: [$injecteur:nomod] Module " portfolioMockupApp.services " n'est pas disponible! Vous pouvez soit mal orthographié le nom du module ou oublié de le charger. Si l'enregistrement d'un module assurer que vous spécifiez les dépendances comme deuxième argument.
http://errors.angularjs.org/1.3.3/$injecteur/nomod?p0=portfolioMockupApp.services
dans /Utilisateurs/danielbogart/Documents/codage/travail/portefeuille-maquette/bower_components/angulaire/angulaire.js:1749
Aussi, j'ai deux fichiers distincts au sein de la portfolioMockupApp.module de services, à la fois enregistrés dans les scripts/répertoire des services.
Karma.fichiers de conf section:
files: [
'bower_components/angular/angular.js',
'bower_components/angular-mocks/angular-mocks.js',
'bower_components/angular-animate/angular-animate.js',
'bower_components/angular-cookies/angular-cookies.js',
'bower_components/angular-resource/angular-resource.js',
'bower_components/angular-sanitize/angular-sanitize.js',
'bower_components/angular-touch/angular-touch.js',
'test/mock/**/*.js',
'test/spec/**/*.js',
'app/scripts/services/*.js',
'app/scripts/directives/*.js',
'app/scripts/controllers/*.js',
'app/scripts/app.js',
'node_modules/angular/angular.js',
'node_modules/angular-mocks/angular-mocks.js',
'./src/**/*.js',
'./test/**/*.js'
],
Portfolio.js spec (premier et le seul test actuellement):
'use strict';
describe('Controller: PortfolioCtrl', function () {
//load the controller's module
beforeEach(module('portfolioMockupApp', 'portfolioMockupApp.services'));
var PortfolioCtrl,
scope;
//Initialize the controller and a mock scope
beforeEach(inject(function ($controller, $scope, $log, $stateParams, $state,
$rootScope,portService, portfolioCreateService) {
scope = $rootScope.$new();
PortfolioCtrl = $controller('PortfolioCtrl', {
$scope: scope
});
}));
it('should have a list of 5 tabs by default', function () {
expect(scope.tabs.length).toBe(5);
});
});
OriginalL'auteur Daniel Bogart | 2014-11-25
Vous devez vous connecter pour publier un commentaire.
Le problème résulte du fait que deux de service distinct des fichiers en utilisant le même module de service. Dans le Karma.fichier conf que j'avais explicitement charger le fichier de service qui a initialisé le module, et puis l'autre fichier de service et de repos de l'application par la suite.
OriginalL'auteur Daniel Bogart
Merci pour le contrôle de retour dans une solution. J'ai eu ce même problème lorsque deux modules appuyés les uns sur les autres et a existé dans le même dossier, permet de les appeler app/scripts/parentModule.js et app/scripts/constants.js. Les deux devraient être ramassés par le générique d'entrée dans karma.config.js.
Depuis constants.js s'appuie sur parentModule.js, au plus tard, doit être inclus première et ma conjecture est que le générique était, y compris les fichiers par ordre alphabétique, mais je n'ai pas confirmé encore.
OriginalL'auteur user1221844