in OSSSwiftDemo/OSSSwiftDemoTests/OSSTaskTests.swift [299:328]
func testPassOnError() {
let orignalError = NSError.init(domain: "OSS-SWIFT-SDK", code: 30, userInfo: nil)
OSSTask<AnyObject>.init(error: orignalError).continue(successBlock: { (t) -> Any? in
XCTFail("This callback should be skipped.")
return nil
}).continue(successBlock: { (t) -> Any? in
XCTFail("This callback should be skipped.")
return nil
}).continue({ (t) -> Any? in
XCTAssertNotNil(t.error)
let error = t.error! as NSError
XCTAssertEqual(30, error.code)
let otherError = NSError.init(domain: "OSS-SWIFT-SDK", code: 31, userInfo: nil)
return OSSTask<AnyObject>.init(error: otherError)
}).continue(successBlock: { (t) -> Any? in
XCTFail("This callback should be skipped.")
return nil
}).continue({ (t) -> Any? in
XCTAssertNotNil(t.error)
let error = t.error! as NSError
XCTAssertEqual(31, error.code)
return OSSTask<AnyObject>.init(result: "okay" as AnyObject)
}).continue(successBlock: { (t) -> Any? in
XCTAssertEqual("okay", t.result as! String)
return nil
}).waitUntilFinished()
}