我有一个模块App
可以检查用户是否登录。
App.run ['$rootScope', 'UserService', ($rootScope, UserService) ->
UserService.current_user()
]
将UserService.current_user()
触发$http
请求。
那么如何编写 $httpBackend 来模拟请求呢?我尝试了一些方法:
describe 'App', ->
$httpBackend = null
beforeEach(module('App')) # one
beforeEach inject ($injector) -> # two
$httpBackend = $injector.get('$httpBackend')
$httpBackend
.when('GET', '/api/1/users/current_user')
.respond(403, {"error":"not signin"})
it "should get current_user request", () ->
$httpBackend.expectGET('/api/1/users/current_user').respond(403, {'error': 'not signin'})
这将显示错误:
Error: Unexpected request: GET /api/1/users/current_user No more request expected
如果我改变 和 的# one
顺序# two
。它会显示错误
Error: Injector already created, can not register a module!
这让我陷入了抑郁。我需要一些帮助。