2

URLSessionおよびURLSessionDataTaskプロトコルに適応するオブジェクトを注入して、独自のクラスをテストしようとしています。これらのプロトコルを拡張NSURLSessionNSURLSessionDataTaskて採用し、既存のオブジェクトを通常どおり使用できるようにしますが、単体テストではテスト オブジェクトを使用します。

エラーがコメントされた次のコードがあります。

typealias SessionHandler = (NSData?, NSURLResponse?, NSError?) -> Void

protocol URLSession {

  func dataTaskWithURL(url: NSURL, completionHandler: SessionHandler) -> URLSessionDataTask

}

protocol URLSessionDataTask {

}

// Type 'NSURLSession' does not conform to protocol 'URLSession'
extension NSURLSession : URLSession {}
extension NSURLSessionDataTask : URLSessionDataTask {}

エラーを理解しました。私のプロトコルは、によって実装されているメソッドと正確に一致しませんNSURLSession。これを修正するにはどうすればよいですか?

4

1 に答える 1