У меня есть следующий код теста случай:Использование AFHTTPRequestOperation в XCTests
- (void)testExample {
// URL https://api.spotify.com/v1/search?q=album%3AJustified%20artist%3AJustin%20Timberlake&type=album
dispatch_semaphore_t sem = dispatch_semaphore_create(0);
[[AFHTTPRequestOperationManager manager] GET:@"https://api.spotify.com/v1/search"
parameters:@{@"q":@"album:Justified artist:Justin Timberlake",
@"type":@"album"}
success:^(AFHTTPRequestOperation *operation, id responseObject) {
dispatch_semaphore_signal(sem);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
}
];
dispatch_semaphore_wait(sem, DISPATCH_TIME_FOREVER);
// This is an example of a functional test case.
XCTAssert(YES, @"Pass");
}
Я ожидал, что тестовый пример, чтобы блокировать и ждать запроса HTTP, чтобы закончить. Странная вещь, что AFHTTPRequestOperation
никогда не достигает блока успеха, даже URL является допустимым. Если я использую следующий код вне XCTest, это не произойдет, блок успеха будет выполнен. Кто-нибудь видел это раньше?
Да, я решил, что второе решение работает. спасибо – BullOnTheWay