【发布时间】:2016-11-30 10:44:37
【问题描述】:
我正在尝试对应该使用假 http 后端的服务进行单元测试,该后端由 Angular 的内存数据服务提供。这是相关代码:
describe('getCars() method ', () => {
it('should return a resolved Promise', inject([DataService], (service: DataService) => {
service.getCars().then((value) => {
expect(value.length).toBe(3);
});
}));
});
问题是我不能使用 Jasmine 的 done 回调来处理异步 service.getCars() 调用,因为注入函数的工作方式。我也不能使用 async 测试助手,因为它不能与 Promise 一起使用。所以我不知道如何等待 promise 解决——测试只是运行而没有达到 expect。
【问题讨论】:
标签: angular testing asynchronous