.dataCorrupted にマッチしてないっぽい。 let jsonData: Data = "".data(using: .utf8)! let result = Result<[Int], Error> { try JSONDecoder().decode([Int].self, from: jsonData) } switch result { case .value(let value): XCTFail("\(value)") case .error(DecodingError.dataCorrupted(let context)): XCTAssertTrue(context.codingPath.isEmpty) case .error(let error): XCTFail("\(error)") }
https://travis-ci.org/koher/SwiftResult/jobs/461127891Result 、 covariance はなくていいんだろうか。特に Result<Int, FooError> を Result<Int, Error> に代入できないの辛そう。