这个测试:
it("getFooCount success", function () {
httpBackend.whenGET('/api/getFooCount').respond(1);
fooService.getFooCount();
httpBackend.flush();
expect(fooService.FooCount).toBe(1);
});
失败:"预期null为1" (在调用api get方法之前,fooService.fooCount为null)。
然而,这个测试通过了:
it("getFooCount success", function () {
httpBackend.whenGET('/api/getFooCount').respond("1");
fooService.getFooCount();
httpBackend.flush();
expect(fooService.fooCount).toBe("1");
});
似乎能够用任何东西(对象,字符串,数组等)传递测试,除了.respond()
中的数字。
我正在调用的api只返回一个整数,有关如何使其工作的任何建议,和/或它失败的原因?
答案 0 :(得分:3)
查看用于响应的API,因为第一个参数实际上是状态代码。
请尝试回复(200,1)。
当你提供非statist对象作为第一个参数
时,Angularjs似乎很聪明