我有一个方法可以调用Angular的$ resource资源。我试图测试此方法的返回值。这种方法应该足够简单,可以进行测试。
方法代码
getCountries(): returnTypeObject {
var countries = this.$resource(
this.apiEndpoint.baseUrl,
{
'get': {
method: 'GET', isArray: false
}
});
return countries;
}
单元测试
describe('module', (): void => {
beforeEach((): void => {
angular.mock.module('ngResource');
});
describe('getCountries...', (): void => {
it("should...", inject(
['Builder', (Builder: IBuilder): void => {
Builder.getCountries().get(
(value: any) => {
console.log(value);
}, (error: any) => {
console.log(error);
});
}]));
});
});
现在在上面的代码中,当我运行我的测试时,没有任何回调被调用。没有"价值"也不是"错误"永远打印出来。我一直在寻找解决方案已经有一段时间了,但是找不到任何东西。
请记住,我不想模拟$ resource,而是想测试getCountries()。get()返回的内容,然后我想使用回调来测试返回值。