我正在尝试开始为我的 Angular 应用程序编写单元测试并很快遇到了一个停止块,因为我不确定如何以可测试的方式准确地模拟我的服务。我的服务如下: var services = angular.module('myApp', ['ngResource']);
services.factory('LogonFactory', function ($resource, $http) {
return $resource('/servicemen/logon/', {}, {
login: {
method: 'POST'
}
})
});
到目前为止,我的测试包括:
describe('Logon', function () {
var mockUserResource, $httpBackend;
beforeEach(angular.mock.module('myApp'));
beforeEach(function () {
angular.mock.inject(function ($injector) {
$httpBackend = $injector.get('$httpBackend');
mockLoginResource = $injector.get('login');
})
});
describe('login', function () {
it('should call login function', inject(function (User) {
$httpBackend.expectGET('/servicemen/logon/')
.respond([{
username: 'test'
}]);
var result = mockLoginResource.login();
$httpBackend.flush();
expect(result[0].username).toEqual('test');
}));
});
});
我也收到错误没有冲洗!提前致谢。