Тайм-аут асинхронной задачи URLRequest
Попытка заставить следующий тест работать. Он никогда не входит в блок завершения и вместо этого истекает через 30 секунд. Похоже, что запрос никогда не был сделан, так как я не вижу его на Чарльзе.
func testAsynchronousURLConnection() {
let url = URL(string: "https://jsonplaceholder.typicode.com/posts/1")!
let exp = expectation(description: "Async request")
var urlRequest = URLRequest(url: url)
urlRequest.httpMethod = "GET"
urlRequest.addValue("application/json", forHTTPHeaderField: "Accept")
let task = URLSession.shared.dataTask(with: urlRequest) { data, response, error in
XCTAssertNotNil(data, "data should not be nil")
XCTAssertNil(error, "error should be nil")
exp.fulfill()
}
task.resume()
waitForExpectations(timeout: 30) { error in
if let error = error {
print("Error: \(error)")
}
}
}
Тест не пройден с ошибкой:
Ошибка асинхронного ожидания: превышено время ожидания 30 секунд с невыполненными ожиданиями: "Асинхронный запрос"
Куда я иду не так?