Jasmine:具有transformResponse/resolve的功能
我在控制器中有一个函数:Jasmine:具有transformResponse/resolve的功能,jasmine,karma-runner,karma-coverage,Jasmine,Karma Runner,Karma Coverage,我在控制器中有一个函数: function get(request) { return UserService.get({ id: request.id, transformResponse: function(data) { return angular.fromJson(data); }
function get(request) {
return UserService.get({
id: request.id,
transformResponse: function(data) {
return angular.fromJson(data);
}
});
};
并进行如下测试:
var $scope;
var controller;
var UserService;
beforeEach(function() {
angular.mock.module(function($provide) {
UserService = jasmine.createSpyObj('UserService', ['get']);
$provide.value('UserService', UserService);
});
});
beforeEach(inject(function($rootScope, $controller, UserService) {
$scope = $rootScope.$new();
controller = $controller('...' {
$scope: $scope,
UserService: UserService
});
$scope.$digest();
}));
it('should call user service get function when getting user', function() {
var request = { id: 5 };
controller.get(request);
expect(UserService.get).toHaveBeenCalledWith(request);
});
测试通过,但karma coverage显示该功能未被测试覆盖。
如何正确模拟此函数?谢谢