in source/UberRidesTests/RequestLayerTests.swift [357:386]
func testNoNetworkError() {
stub(condition: isHost("sandbox-api.uber.com")) { _ in
let notConnectedError = NSError(domain: NSURLErrorDomain, code: Int(CFNetworkErrors.cfurlErrorNotConnectedToInternet.rawValue), userInfo: nil)
return HTTPStubsResponse(error:notConnectedError)
}
let expectation = self.expectation(description: "No network error response")
let endpoint = Products.getProduct(productID: productID)
guard let request = Request(session: client.session, endpoint: endpoint) else {
XCTFail("Unable to create request")
return
}
request.execute({ response in
XCTAssertEqual(response.statusCode, 0)
XCTAssertNotNil(response.error)
XCTAssertTrue(response.error is UberUnknownError)
XCTAssertEqual(response.error!.title, NSURLErrorDomain)
XCTAssertEqual(response.error!.status, Int(CFNetworkErrors.cfurlErrorNotConnectedToInternet.rawValue))
XCTAssertNil(response.error!.meta)
expectation.fulfill()
})
waitForExpectations(timeout: timeout, handler: { error in
if let error = error {
print("Error: \(error.localizedDescription)")
}
request.cancelTasks()
})
}