如何使用Expecta / OCMockito测试异步委托方法?

时间:2015-07-27 22:55:29

标签: ios objective-c kiwi ocmockito expecta

我目前正在使用Kiwi编写测试,但我有兴趣尝试使用Specta / Expecta / OCMockito(或其他模拟库,如有必要)。

我使用Kiwi的一件事是测试在一些异步工作之后调用委托方法。例如,这个Kiwi规范存根HTTP请求响应(在后台队列中执行),并测试最终委托被告知请求的响应:

it(@"Sends a callback", ^{
    [OHHTTPStubs stubRequestContainingString:@"start" withJSON:@{}];

    id starterMock = [KWMock mockForProtocol:@protocol(HZMediationStarting)];
    HZMediationStarter *starter = [[HZMediationStarter alloc] initWithStartingDelegate:starterMock];

    [starter start];
    [[starterMock shouldEventually] receive:@selector(startWithDictionary:fromCache:)];
});

有没有办法通过Expecta / OCMockito(或可能是另一个模拟库?)来实现这一目标。我可以看到Expecta支持asynchronous expectations,但我不确定如何将它与OCMockito这样的模拟库结合起来。

0 个答案:

没有答案