大佬教程收集整理的这篇文章主要介绍了在AngularJS中测试$resource服务,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我的服务如下:
angular.module('resources.users',['ngResource']) .factory('User',function($resource) { var resource = $resource('/api/index.PHP/users/:username',{},{ 'update': {method: 'PUT'} }); resource.getUser = function(username,successCb) { return resource.query({username: username},successCb); }; return resource; });
我的测试包括:
describe('User',function() { var mockUserResource; beforeEach(module('resources.users')); beforeEach(function() { mockUserResource = sinon.stub({ getUser: function(username) { mockUserResource.query({username: username}); },query: function() {} }); module(function($provide) { $provide.value('User',mockUserResource); }) }); describe('getUser',function() { it('should call getUser with username',inject(function(User) { User.getUser('test'); expect(mockUserResource.query.args[0][0]).toEqual({username: 'test'}); })); }) });
describe('User',function () { var mockUserResource,$httpBackend; beforeEach(angular.mock.module('myApp')); beforeEach(function () { angular.mock.inject(function ($injector) { $httpBackend = $injector.get('$httpBackend'); mockUserResource = $injector.get('User'); }) }); describe('getUser',function () { it('should call getUser with username',inject(function (User) { $httpBackend.expectGET('/api/index.PHP/users/test') .respond([{ username: 'test' }]); var result = mockUserResource.getUser('test'); $httpBackend.flush(); expect(result[0].username).toEqual('test'); })); }); });
以上是大佬教程为你收集整理的在AngularJS中测试$resource服务全部内容,希望文章能够帮你解决在AngularJS中测试$resource服务所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。