Как я могу проверить асинхронные методы делегата, используя Expecta/OCMockito?

В настоящее время я использую 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.

0 ответов

Другие вопросы по тегам