Сбой тестовых случаев Karma/Jasmine из-за модуля ngIdle

Ошибка: [$injector:modulerr] Не удалось создать экземпляр модуля ngIdle из-за: Ошибка: [$injector:nomod] Модуль ngIdle недоступен! Вы либо неправильно написали имя модуля, либо забыли его загрузить. При регистрации модуля убедитесь, что вы указали зависимости в качестве второго аргумента.

Что мне не хватает? Если я не включу модуль ngIdle и не удалю код для его реализации, то все мои тесты на карму/жасмин пройдут, но с включенным ngIdle все мои 100+ тестовых случаев не пройдут и выдадут вышеуказанную ошибку. Я включил ngIdle в karma.conf.js в этом порядке

files: [
'app/bower_components/angular/angular.js',
'app/bower_components/angular-route/angular-route.js',
'app/bower_components/angular-touch/angular-touch.js',
'app/bower_components/angular-animate/angular-animate.js',
'app/bower_components/angular-bootstrap/ui-bootstrap-tpls.min.js',
'app/bower_components/angular-mocks/angular-mocks.js',
'app/bower_components/angular-resource/angular-resource.js',
'app/bower_components/revolunet-angular-carousel/lib/angular-mobile.js',
'app/bower_components/revolunet-angular-carousel/src/angular-carousel.js',
'app/bower_components/jquery/dist/jquery.js',
'app/bower_components/angular-cookies/angular-cookies.min.js',
'app/bower_components/ng-idle/angular-idle.min.js',
'app/bower_components/ng-grid/ng-grid-2.0.11.min.js',
'app/js//*.js',
'test/spec//*.js'
 ],

Ниже приведен мой bower.json, чтобы вы имели представление о версиях, которые я использую, если это связано

{
  "name": "combo",
  "version": "0.5.1",
  "dependencies": {
    "angular": "~1.3",
    "angular-route": "~1.3",
    "angular-touch": "~1.3",
    "angular-animate": "~1.3",
    "angular-resource": "~1.3",
    "angular-cookies": "~1.3",
    "angular-bootstrap": "~0.11.0",
    "revolunet-angular-carousel": "~0.2.2",
    "ng-grid": "~2.0.7",
    "ng-idle": "latest",
    "video.js": "~4",
    "highcharts": "~3.0.7",
    "jquery": "~2",
    "jquery-ui": "~1.10.4",
    "jqueryui-touch-punch": "git://github.com/furf/jquery-ui-touch-punch.git",
    "angular-snap": "~1.4.1",
    "snapjs": "latest"
  },
  "devDependencies": {
    "angular-mocks": "~1.3",
    "angular-scenario": "~1.3"
  },
  "resolutions": {
    "angular": "~1.2.10",
    "angular-touch": "~1.2.10",
    "jquery": "^1.8.0"
  }
}

person yoshi    schedule 30.07.2014    source источник


Ответы (1)


Вы должны добавить angular-idle.min.js в свой karma.conf.js.

files: [
  //Configs
  'config.js',

  'lib/angular/angular.min.js',
  'lib/angular-mocks/angular-mocks.js',
  'lib/moment/moment.js',
  'lib/ng-idle/angular-idle.min.js',
  'lib/angular-moment/angular-moment.js',
  // ... another libraries
],
person Gustavo Cortez    schedule 01.08.2014
comment
Я четко написал в своем вопросе, что добавил 'app/bower_components/ng-idle/angular-idle.min.js' в свой karma.conf.js, и, кроме того, функциональность ng-idle также работает правильно в моем приложении. Это только тесты на карму терпят неудачу. - person yoshi; 01.08.2014