角单元测试中的未知提供者

牛磺酸

我有这个控制器:

angular.module("controllers").controller("AddController", function($rootScope, $scope, $location, $timeout, $routeParams, Todos, MessageQueue) {
   // ... code
});

和这个测试:

describe("AddController", function() {

   var ctrl;
   var scope;

   beforeEach(module('controllers'));

   beforeEach(inject(function($rootScope, $controller) {
      scope = $rootScope.$new();
      ctrl = $controller('AddController', {
         $scope: scope
      });
   }));

   it("should be available", function() {
      expect(ctrl).not.toBe(undefined);
   });

});

业力说:

Error: [$injector:unpr] Unknown provider: $routeParamsProvider <- $routeParams
    http://errors.angularjs.org/1.2.27-build.533+sha.c8c2386/$injector/unpr?p0=%24routeParamsProvider%20%3C-%20%24routeParams

但是在我的karma.config中,我正在导入bower_components/angular-route/angular-route.js这里:

module.exports = function(config) {
   config.set({
      basePath: '',
      frameworks: ['jasmine'],
      files: [
         'bower_components/angular/angular.js',
         'bower_components/angular-route/angular-route.js',
         'bower_components/angular-mocks/angular-mocks.js',

         'app/scripts/app.js',
         'app/scripts/services/mod.js',
         'app/scripts/directives/mod.js',
         'app/scripts/controllers/mod.js',

         'app/scripts/**/*.js',
         'test/spec/**/*Spec.js'
      ],
      exclude: [
      ],
      preprocessors: {
      },
      reporters: ['progress'],
      port: 9876,
      colors: true,
      logLevel: config.LOG_INFO,
      autoWatch: true,
      browsers: ['Firefox'],
      singleRun: false
   });
};

我有点不解。任何人?

大卫·布洪尼克

您可以自己将'$ routeParams'对象传递给$controller调用,然后看起来像这样:

beforeEach(inject(function($rootScope, $controller) {
      scope = $rootScope.$new();
      ctrl = $controller('AddController', {
         $scope: scope,
         $routeParams: {id: '...'}
      });
   }));

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Yii单元测试中的数据提供者

来自分类Dev

业障测试中的未知提供者

来自分类Dev

对厨师提供者进行单元测试

来自分类Dev

Flutter中提供者的单元测试

来自分类Dev

我想在多个 Angular 单元测试中重用部分提供者列表

来自分类Dev

角单元测试:未知提供程序:$$ qProvider <-$$ q <-$ interval

来自分类Dev

角单元测试未知提供程序:$ scopeProvider

来自分类Dev

角射(未知的提供者)

来自分类Dev

角服务抛出“未知提供者”

来自分类Dev

为什么需要测试中的服务提供者(未知提供者)?

来自分类Dev

Angular 2 - 单元测试 - “没有令牌翻译的提供者”错误

来自分类Dev

AngularJS中的未知提供者$ sce

来自分类Dev

AngularJS中的未知资源提供者

来自分类Dev

未知提供者 角靴式拾色器

来自分类Dev

角注入$ service结果导致未知提供者:$ serviceProvider

来自分类Dev

未知提供者 角靴式拾色器

来自分类Dev

未知提供者:$ controller

来自分类Dev

未知的提供者CookieStore

来自分类Dev

未知的提供者:$ ionicAppProvider

来自分类Dev

未知提供者:$ state

来自分类Dev

未知提供者:ngModelProvider

来自分类Dev

uiSelect未知提供者

来自分类Dev

未知提供者:$ cordovaSQLiteProvider

来自分类Dev

未知提供者:acordionDirectiveProvider

来自分类Dev

未知的提供者CookieStore

来自分类Dev

Heroku未知提供者

来自分类Dev

未知提供者:ngModelProvider

来自分类Dev

指令提供者未知

来自分类Dev

未知提供者:$ routeParamsProvider