|
|
@@ -30,29 +30,26 @@ class ResponseDataTestCase: BaseTestCase {
|
|
|
let URLString = "https://httpbin.org/get"
|
|
|
let expectation = expectationWithDescription("request should succeed")
|
|
|
|
|
|
- var request: NSURLRequest?
|
|
|
- var response: NSHTTPURLResponse?
|
|
|
- var data: NSData?
|
|
|
- var result: Result<NSData, NSError>?
|
|
|
+ var response: Response<NSData, NSError>?
|
|
|
|
|
|
// When
|
|
|
Alamofire.request(.GET, URLString, parameters: ["foo": "bar"])
|
|
|
- .responseData { responseRequest, responseResponse, responseData, responseResult in
|
|
|
- request = responseRequest
|
|
|
- response = responseResponse
|
|
|
- data = responseData
|
|
|
- result = responseResult
|
|
|
-
|
|
|
+ .responseData { closureResponse in
|
|
|
+ response = closureResponse
|
|
|
expectation.fulfill()
|
|
|
}
|
|
|
|
|
|
waitForExpectationsWithTimeout(defaultTimeout, handler: nil)
|
|
|
|
|
|
// Then
|
|
|
- XCTAssertNotNil(request, "request should not be nil")
|
|
|
- XCTAssertNotNil(response, "response should not be nil")
|
|
|
- XCTAssertNotNil(data, "data should not be nil")
|
|
|
- XCTAssertTrue(result?.isSuccess ?? false, "result should be success")
|
|
|
+ if let response = response {
|
|
|
+ XCTAssertNotNil(response.request, "request should not be nil")
|
|
|
+ XCTAssertNotNil(response.response, "response should not be nil")
|
|
|
+ XCTAssertNotNil(response.data, "data should not be nil")
|
|
|
+ XCTAssertTrue(response.result.isSuccess, "result should be success")
|
|
|
+ } else {
|
|
|
+ XCTFail("response should not be nil")
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
func testThatResponseDataReturnsFailureResultWithOptionalDataAndError() {
|
|
|
@@ -60,29 +57,26 @@ class ResponseDataTestCase: BaseTestCase {
|
|
|
let URLString = "https://invalid-url-here.org/this/does/not/exist"
|
|
|
let expectation = expectationWithDescription("request should fail with 404")
|
|
|
|
|
|
- var request: NSURLRequest?
|
|
|
- var response: NSHTTPURLResponse?
|
|
|
- var data: NSData?
|
|
|
- var result: Result<NSData, NSError>?
|
|
|
+ var response: Response<NSData, NSError>?
|
|
|
|
|
|
// When
|
|
|
Alamofire.request(.GET, URLString, parameters: ["foo": "bar"])
|
|
|
- .responseData { responseRequest, responseResponse, responseData, responseResult in
|
|
|
- request = responseRequest
|
|
|
- response = responseResponse
|
|
|
- data = responseData
|
|
|
- result = responseResult
|
|
|
-
|
|
|
+ .responseData { closureResponse in
|
|
|
+ response = closureResponse
|
|
|
expectation.fulfill()
|
|
|
}
|
|
|
|
|
|
waitForExpectationsWithTimeout(defaultTimeout, handler: nil)
|
|
|
|
|
|
// Then
|
|
|
- XCTAssertNotNil(request, "request should not be nil")
|
|
|
- XCTAssertNil(response, "response should be nil")
|
|
|
- XCTAssertNotNil(data, "data should not be nil")
|
|
|
- XCTAssertTrue(result?.isFailure ?? false, "result should be failure")
|
|
|
+ if let response = response {
|
|
|
+ XCTAssertNotNil(response.request, "request should not be nil")
|
|
|
+ XCTAssertNil(response.response, "response should be nil")
|
|
|
+ XCTAssertNotNil(response.data, "data should not be nil")
|
|
|
+ XCTAssertTrue(response.result.isFailure, "result should be failure")
|
|
|
+ } else {
|
|
|
+ XCTFail("response should not be nil")
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -94,29 +88,26 @@ class ResponseStringTestCase: BaseTestCase {
|
|
|
let URLString = "https://httpbin.org/get"
|
|
|
let expectation = expectationWithDescription("request should succeed")
|
|
|
|
|
|
- var request: NSURLRequest?
|
|
|
- var response: NSHTTPURLResponse?
|
|
|
- var data: NSData?
|
|
|
- var result: Result<String, NSError>?
|
|
|
+ var response: Response<String, NSError>?
|
|
|
|
|
|
// When
|
|
|
Alamofire.request(.GET, URLString, parameters: ["foo": "bar"])
|
|
|
- .responseString { responseRequest, responseResponse, responseData, responseResult in
|
|
|
- request = responseRequest
|
|
|
- response = responseResponse
|
|
|
- data = responseData
|
|
|
- result = responseResult
|
|
|
-
|
|
|
+ .responseString { closureResponse in
|
|
|
+ response = closureResponse
|
|
|
expectation.fulfill()
|
|
|
}
|
|
|
|
|
|
waitForExpectationsWithTimeout(defaultTimeout, handler: nil)
|
|
|
|
|
|
// Then
|
|
|
- XCTAssertNotNil(request, "request should not be nil")
|
|
|
- XCTAssertNotNil(response, "response should not be nil")
|
|
|
- XCTAssertNotNil(data, "data should not be nil")
|
|
|
- XCTAssertTrue(result?.isSuccess ?? false, "result should be success")
|
|
|
+ if let response = response {
|
|
|
+ XCTAssertNotNil(response.request, "request should not be nil")
|
|
|
+ XCTAssertNotNil(response.response, "response should not be nil")
|
|
|
+ XCTAssertNotNil(response.data, "data should not be nil")
|
|
|
+ XCTAssertTrue(response.result.isSuccess, "result should be success")
|
|
|
+ } else {
|
|
|
+ XCTFail("response should not be nil")
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
func testThatResponseStringReturnsFailureResultWithOptionalDataAndError() {
|
|
|
@@ -124,29 +115,26 @@ class ResponseStringTestCase: BaseTestCase {
|
|
|
let URLString = "https://invalid-url-here.org/this/does/not/exist"
|
|
|
let expectation = expectationWithDescription("request should fail with 404")
|
|
|
|
|
|
- var request: NSURLRequest?
|
|
|
- var response: NSHTTPURLResponse?
|
|
|
- var data: NSData?
|
|
|
- var result: Result<String, NSError>?
|
|
|
+ var response: Response<String, NSError>?
|
|
|
|
|
|
// When
|
|
|
Alamofire.request(.GET, URLString, parameters: ["foo": "bar"])
|
|
|
- .responseString { responseRequest, responseResponse, responseData, responseResult in
|
|
|
- request = responseRequest
|
|
|
- response = responseResponse
|
|
|
- data = responseData
|
|
|
- result = responseResult
|
|
|
-
|
|
|
+ .responseString { closureResponse in
|
|
|
+ response = closureResponse
|
|
|
expectation.fulfill()
|
|
|
}
|
|
|
|
|
|
waitForExpectationsWithTimeout(defaultTimeout, handler: nil)
|
|
|
|
|
|
// Then
|
|
|
- XCTAssertNotNil(request, "request should not be nil")
|
|
|
- XCTAssertNil(response, "response should be nil")
|
|
|
- XCTAssertNotNil(data, "data should not be nil")
|
|
|
- XCTAssertTrue(result?.isFailure ?? false, "result should be failure")
|
|
|
+ if let response = response {
|
|
|
+ XCTAssertNotNil(response.request, "request should not be nil")
|
|
|
+ XCTAssertNil(response.response, "response should be nil")
|
|
|
+ XCTAssertNotNil(response.data, "data should not be nil")
|
|
|
+ XCTAssertTrue(response.result.isFailure, "result should be failure")
|
|
|
+ } else {
|
|
|
+ XCTFail("response should not be nil")
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -158,29 +146,26 @@ class ResponseJSONTestCase: BaseTestCase {
|
|
|
let URLString = "https://httpbin.org/get"
|
|
|
let expectation = expectationWithDescription("request should succeed")
|
|
|
|
|
|
- var request: NSURLRequest?
|
|
|
- var response: NSHTTPURLResponse?
|
|
|
- var data: NSData?
|
|
|
- var result: Result<AnyObject, NSError>?
|
|
|
+ var response: Response<AnyObject, NSError>?
|
|
|
|
|
|
// When
|
|
|
Alamofire.request(.GET, URLString, parameters: ["foo": "bar"])
|
|
|
- .responseJSON { responseRequest, responseResponse, responseData, responseResult in
|
|
|
- request = responseRequest
|
|
|
- response = responseResponse
|
|
|
- data = responseData
|
|
|
- result = responseResult
|
|
|
-
|
|
|
+ .responseJSON { closureResponse in
|
|
|
+ response = closureResponse
|
|
|
expectation.fulfill()
|
|
|
}
|
|
|
|
|
|
waitForExpectationsWithTimeout(defaultTimeout, handler: nil)
|
|
|
|
|
|
// Then
|
|
|
- XCTAssertNotNil(request, "request should not be nil")
|
|
|
- XCTAssertNotNil(response, "response should not be nil")
|
|
|
- XCTAssertNotNil(data, "data should not be nil")
|
|
|
- XCTAssertTrue(result?.isSuccess ?? false, "result should be success")
|
|
|
+ if let response = response {
|
|
|
+ XCTAssertNotNil(response.request, "request should not be nil")
|
|
|
+ XCTAssertNotNil(response.response, "response should not be nil")
|
|
|
+ XCTAssertNotNil(response.data, "data should not be nil")
|
|
|
+ XCTAssertTrue(response.result.isSuccess, "result should be success")
|
|
|
+ } else {
|
|
|
+ XCTFail("response should not be nil")
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
func testThatResponseStringReturnsFailureResultWithOptionalDataAndError() {
|
|
|
@@ -188,29 +173,26 @@ class ResponseJSONTestCase: BaseTestCase {
|
|
|
let URLString = "https://invalid-url-here.org/this/does/not/exist"
|
|
|
let expectation = expectationWithDescription("request should fail with 404")
|
|
|
|
|
|
- var request: NSURLRequest?
|
|
|
- var response: NSHTTPURLResponse?
|
|
|
- var data: NSData?
|
|
|
- var result: Result<AnyObject, NSError>?
|
|
|
+ var response: Response<AnyObject, NSError>?
|
|
|
|
|
|
// When
|
|
|
Alamofire.request(.GET, URLString, parameters: ["foo": "bar"])
|
|
|
- .responseJSON { responseRequest, responseResponse, responseData, responseResult in
|
|
|
- request = responseRequest
|
|
|
- response = responseResponse
|
|
|
- data = responseData
|
|
|
- result = responseResult
|
|
|
-
|
|
|
+ .responseJSON { closureResponse in
|
|
|
+ response = closureResponse
|
|
|
expectation.fulfill()
|
|
|
}
|
|
|
|
|
|
waitForExpectationsWithTimeout(defaultTimeout, handler: nil)
|
|
|
|
|
|
// Then
|
|
|
- XCTAssertNotNil(request, "request should not be nil")
|
|
|
- XCTAssertNil(response, "response should be nil")
|
|
|
- XCTAssertNotNil(data, "data should not be nil")
|
|
|
- XCTAssertTrue(result?.isFailure ?? false, "result should be failure")
|
|
|
+ if let response = response {
|
|
|
+ XCTAssertNotNil(response.request, "request should not be nil")
|
|
|
+ XCTAssertNil(response.response, "response should be nil")
|
|
|
+ XCTAssertNotNil(response.data, "data should not be nil")
|
|
|
+ XCTAssertTrue(response.result.isFailure, "result should be failure")
|
|
|
+ } else {
|
|
|
+ XCTFail("response should not be nil")
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
func testThatResponseJSONReturnsSuccessResultForGETRequest() {
|
|
|
@@ -218,36 +200,33 @@ class ResponseJSONTestCase: BaseTestCase {
|
|
|
let URLString = "https://httpbin.org/get"
|
|
|
let expectation = expectationWithDescription("request should succeed")
|
|
|
|
|
|
- var request: NSURLRequest?
|
|
|
- var response: NSHTTPURLResponse?
|
|
|
- var data: NSData?
|
|
|
- var result: Result<AnyObject, NSError>?
|
|
|
+ var response: Response<AnyObject, NSError>?
|
|
|
|
|
|
// When
|
|
|
Alamofire.request(.GET, URLString, parameters: ["foo": "bar"])
|
|
|
- .responseJSON { responseRequest, responseResponse, responseData, responseResult in
|
|
|
- request = responseRequest
|
|
|
- response = responseResponse
|
|
|
- data = responseData
|
|
|
- result = responseResult
|
|
|
-
|
|
|
+ .responseJSON { closureResponse in
|
|
|
+ response = closureResponse
|
|
|
expectation.fulfill()
|
|
|
}
|
|
|
|
|
|
waitForExpectationsWithTimeout(defaultTimeout, handler: nil)
|
|
|
|
|
|
// Then
|
|
|
- XCTAssertNotNil(request, "request should not be nil")
|
|
|
- XCTAssertNotNil(response, "response should not be nil")
|
|
|
- XCTAssertNotNil(data, "data should not be nil")
|
|
|
- XCTAssertTrue(result?.isSuccess ?? false, "result should be success")
|
|
|
-
|
|
|
- // The `as NSString` cast is necessary due to a compiler bug. See the following rdar for more info.
|
|
|
- // - https://openradar.appspot.com/radar?id=5517037090635776
|
|
|
- if let args = result?.value?["args" as NSString] as? [String: String] {
|
|
|
- XCTAssertEqual(args, ["foo": "bar"], "args should match parameters")
|
|
|
+ if let response = response {
|
|
|
+ XCTAssertNotNil(response.request, "request should not be nil")
|
|
|
+ XCTAssertNotNil(response.response, "response should not be nil")
|
|
|
+ XCTAssertNotNil(response.data, "data should not be nil")
|
|
|
+ XCTAssertTrue(response.result.isSuccess, "result should be success")
|
|
|
+
|
|
|
+ // The `as NSString` cast is necessary due to a compiler bug. See the following rdar for more info.
|
|
|
+ // - https://openradar.appspot.com/radar?id=5517037090635776
|
|
|
+ if let args = response.result.value?["args" as NSString] as? [String: String] {
|
|
|
+ XCTAssertEqual(args, ["foo": "bar"], "args should match parameters")
|
|
|
+ } else {
|
|
|
+ XCTFail("args should not be nil")
|
|
|
+ }
|
|
|
} else {
|
|
|
- XCTFail("args should not be nil")
|
|
|
+ XCTFail("response should not be nil")
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -256,36 +235,33 @@ class ResponseJSONTestCase: BaseTestCase {
|
|
|
let URLString = "https://httpbin.org/post"
|
|
|
let expectation = expectationWithDescription("request should succeed")
|
|
|
|
|
|
- var request: NSURLRequest?
|
|
|
- var response: NSHTTPURLResponse?
|
|
|
- var data: NSData?
|
|
|
- var result: Result<AnyObject, NSError>?
|
|
|
+ var response: Response<AnyObject, NSError>?
|
|
|
|
|
|
// When
|
|
|
Alamofire.request(.POST, URLString, parameters: ["foo": "bar"])
|
|
|
- .responseJSON { responseRequest, responseResponse, responseData, responseResult in
|
|
|
- request = responseRequest
|
|
|
- response = responseResponse
|
|
|
- data = responseData
|
|
|
- result = responseResult
|
|
|
-
|
|
|
+ .responseJSON { closureResponse in
|
|
|
+ response = closureResponse
|
|
|
expectation.fulfill()
|
|
|
}
|
|
|
|
|
|
waitForExpectationsWithTimeout(defaultTimeout, handler: nil)
|
|
|
|
|
|
// Then
|
|
|
- XCTAssertNotNil(request, "request should not be nil")
|
|
|
- XCTAssertNotNil(response, "response should not be nil")
|
|
|
- XCTAssertNotNil(data, "data should not be nil")
|
|
|
- XCTAssertTrue(result?.isSuccess ?? false, "result should be success")
|
|
|
-
|
|
|
- // The `as NSString` cast is necessary due to a compiler bug. See the following rdar for more info.
|
|
|
- // - https://openradar.appspot.com/radar?id=5517037090635776
|
|
|
- if let form = result?.value?["form" as NSString] as? [String: String] {
|
|
|
- XCTAssertEqual(form, ["foo": "bar"], "form should match parameters")
|
|
|
+ if let response = response {
|
|
|
+ XCTAssertNotNil(response.request, "request should not be nil")
|
|
|
+ XCTAssertNotNil(response.response, "response should not be nil")
|
|
|
+ XCTAssertNotNil(response.data, "data should not be nil")
|
|
|
+ XCTAssertTrue(response.result.isSuccess, "result should be success")
|
|
|
+
|
|
|
+ // The `as NSString` cast is necessary due to a compiler bug. See the following rdar for more info.
|
|
|
+ // - https://openradar.appspot.com/radar?id=5517037090635776
|
|
|
+ if let form = response.result.value?["form" as NSString] as? [String: String] {
|
|
|
+ XCTAssertEqual(form, ["foo": "bar"], "form should match parameters")
|
|
|
+ } else {
|
|
|
+ XCTFail("form should not be nil")
|
|
|
+ }
|
|
|
} else {
|
|
|
- XCTFail("form should not be nil")
|
|
|
+ XCTFail("response should not be nil")
|
|
|
}
|
|
|
}
|
|
|
}
|