我有一个简单的管理器对象,并在猕猴桃中使用模拟,我想检查当我调用[aPOIManager fetchNear:location]
它时是否调用它downloadPOIsNear:completionBlock:
的下载器。
一切正常,直到我决定将调用发送到大型中央调度中的下载器。
调用是异步的,测试现在失败。Kiwi 具有异步检查某些值的功能,但不检查异步调用。
这是我的测试的一部分:
it(@"should call the proximity downloader", ^{
CLLocation *location = [[CLLocation alloc] initWithLatitude:1.0f longitude:1.0f];
id<RMProximityDownloader> mockDownloader =
[KWMock mockForProtocol:@protocol(RMProximityDownloader)];
[[(NSObject*)mockDownloader should] receive:@selector(downloadPOIsNear:completionBlock:)];
RMPOIManager *aPOIManager = [[RMPOIManager alloc] initWithDownloader:mockDownloader];
[aPOIManager fetchNear:location];
});