Извините за вопрос noob, но я пытаюсь проверить соединение, но я не могу проверить возврат запроса, потому что тест заканчивается до того, как обработчик завершения имеет шанс выполнить. Для ilustrate:Как проверить sendAsynchronousRequest: на XCTest
-(void)testConnection
{
[[Conector sharedInstance] performAsynchronousRequestWithServerRequest:_srvRequest completionHandler:^(RequestAsynchronousStatus finishStatus, NSData *data) {
if (finishStatus == RequestAsynchronousOK){
_data = data;
NSLog(@"Data OK");
}
}];
XCTAssertNotNil(_data, @"Data was nil");
}
Когда я пытаюсь утверждать, _data всегда будет нулевым, так как обработчик завершения еще не был выполнен. Существует механизм, чтобы заставить тест ждать, пока у меня не будет ответа от метода sendAsynchronousRequest :. Спасибо заранее.
Благодаря человеку, что это именно то, что я искал! –
Возможно, было бы полезно знать, что одна из известных проблем, упомянутых в readme XCAsyncTestCase, заключается в том, что «тесты зависают при запуске под ботами сборки XCode». Поэтому, если вы используете сборщики ботов, вы можете посмотреть на «xctest-добавления» iheartradio. – eremzeit