gpt4 book ai didi

angularjs - 使用 jasmine 测试 angular.factory 时出现未知的提供程序错误

转载 作者:行者123 更新时间:2023-12-01 05:16:11 26 4
gpt4 key购买 nike

我正在尝试使用 jasmine 测试一个有 Angular 的“服务”(实际上是使用工厂实现的),并收到以下错误:

collectionService should contain collectionService
Error: [$injector:unpr] Unknown provider: collectionServiceProvider <- collectionService http://errors.angularjs.org/1.2.1/$injector/unpr?p0=collectionServiceProvider%20%3C-%20collectionService in file:///C:/workspaces/angular/angular-1.2.1.js (line 78)

这是来源:
'use strict';

var collectionMockData = {};
var collectionMockErrorData = {};

angular.module('gid.services.collectionMockService', ['ngMockE2E']).run(function($httpBackend, $resource) {
$httpBackend.whenGET('/api/collection/v1/1234567890').respond(function(method, url, data, headers){
return [200, collectionMockData, {}];
});
$httpBackend.whenGET('/api/collection/v1/1234567891').respond(function(method, url, data, headers){
return [500, collectionMockErrorData , {}];
});
});

angular.module('gid.services.collectionService', [ 'ngResource', 'gid.services.collectionMockService' ])
.factory('collectionService', ['$resource', function($resource) {
var collectionData = null;
var collectionResource = $resource('/api/collection/v1/:shopperId', { 'shopperId': '@id' });
return {
getcollection: function (callback) {
collectionResource.get({ 'shopperId': '1234567890' }).$promise
.then(function (data) {
callback(data);
}).catch(function (data) {
callback(data);
});
}
};
}]);

这是测试:
'use strict';

describe('collectionService', function() {

beforeEach(function () {
angular.module('gid.services.collectionService');
});


it('should contain collectionService', inject(function (collectionService) {
expect(collectionService).not.to.equal(null);

}));

});

有人能告诉我我在这里做错了什么吗?

我在源本身中 mock REST API,因为后端 REST API 实现不可用。

在此先感谢您的时间!

最佳答案

代替

angular.module('gid.services.collectionService');

你应该使用
angular.mock.module('gid.services.collectionService');

或简写
module('gid.services.collectionService');

关于angularjs - 使用 jasmine 测试 angular.factory 时出现未知的提供程序错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20148919/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com