Inclure les dépendances dans le Karma fichier de test Angulaire de l'app?

Je suis en train d'essayer de démarrer avec le Karma tests, en les ajoutant à un existant Angulaire de l'app.

C'est ma principale application fichier de définition:

angular
  .module('myApp', [
    'ngRoute',
    'moduleAdherence'
  ]);

C'est mon contrôleur de fichier:

   angular
    .module('moduleAdherence', [])
    .controller('AdherenceCtrl', ['$scope', function ($scope) {
      $scope.awesomeThings = [1,2,3,4];
    }]);

C'est mon premier coup de couteau à un fichier:

describe('Controller: AdherenceCtrl', function () {
  beforeEach(module('myApp'));
  var MainCtrl,
    scope;
  beforeEach(inject(function ($controller, $rootScope) {
    scope = $rootScope.$new();
    MainCtrl = $controller('AdherenceCtrl', {
      $scope: scope
    });
  }));
  it('should attach a list of awesomeThings to the scope', function () {
    expect(scope.awesomeThings.length).toBe(4);
  });
});

Lorsque j'essaie d'exécuter ce avec grunt test, il échoue avec l'erreur suivante:

Uncaught Error: [$injector:nomod] Module 'd3' is not available! 
You either misspelled the module name or forgot to load it. 
If registering a module ensure that you specify the dependencies 
as the second argument.
http://errors.angularjs.org/1.2.0/$injector/nomod?p0=d3
at /Users/me/Dropbox/projects/myapp/app/bower_components/angular/angular.js:1498

Je ne comprends pas, parce que ce contrôleur ne pas Utiliser de D3. Je ne l'utilisation de D3 ailleurs dans l'application, dans une directive, mais je ne suis pas de l'enregistrer avec le module (j'utilise l'externe D3 fichier).

Pourquoi est-Karma remarquer D3? Ne devrait-elle pas être en mesure de tester ce contrôleur sans D3?

  • Où est le module myApp défini? Et MainCtrl?
  • Désolé - fautes de frappe lors du changement de nom pour la consommation publique, c'est corrigé. Le problème est toujours le même.
  • Compris - j'ai dû charger les dépendances de manière explicite dans karma.config.js, dans le files section.
  • super, merci de l'ajouter comme une solution!
  • Utilisation karma-angular-filesort
InformationsquelleAutor Richard | 2013-11-21