ngMock没有注入工厂

时间:2016-06-17 19:19:56

标签: angularjs jasmine karma-runner karma-jasmine ngmock

过去24小时我一直坚持这个问题,但是我的代码在这里看不出有什么问题。我从Angular得到一个注射器错误,无法理解为什么。这是我的代码:

(function (){
  'use strict';
  angular.module('Test', []).factory('stats', factory);

  function factory() {
    return {
      dummy: 'Dummy Text'
    };
  }
})

describe('Test', function() {
  var stats;
  beforeEach(module('Test'));

  beforeEach(inject(function(_stats_) {
    stats = _stats_;
  }));

  it('Should be defined', function() {
    expect(stats).toBeDefined();
  })
})

我检查了我的karma.conf.js文件,所有需要的文件都包含在测试中。我有另一个属于同一模块的服务,当我尝试注入它而不是' test '时,它按预期工作。

对此的任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您正在定义一个函数,它定义了一个Test模块并添加了一个服务统计信息,但您从不调用该函数。

代码应为:

(function (){
  ...
})();

请注意用于调用该函数的附加括号。