【发布时间】:2013-10-27 04:18:24
【问题描述】:
我在一个控制器中有一个函数,它有一个调用
var someVar = angular.element(event.target).scope().field;
我试图通过这样做来模拟它
var ngElementFake = function(el) {
return {
scope: function() {
return {
toggleChildElement: true,
field: scope.field
}
}
}
}
spyOn(angular, 'element').andCallFake(ngElementFake);
但是,当我在测试中调用该函数时,我得到了响应:
TypeError: 'undefined' is not a function (evaluating 'injector.get('$rootElement').off()')
at ../angular-mocks/angular-mocks.js:1819
我做错了什么?
编辑:注入
beforeEach(function() {
inject(function($rootScope, $controller) {
scope = $rootScope;
scope.record = recordData;
scope.model = 'Hierarchy';
ctrl = $controller("fngHierarchyChildCtrl", {
$scope: scope
});
});
});
【问题讨论】:
标签: unit-testing angularjs jasmine