1

我目前正在使用 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 支持异步期望,但我不确定如何将它与像 OCMockito 这样的模拟库结合起来。

4

0 回答 0