From b5dbdc452c981ba9bb18d13a96273ed57d1e9cdd Mon Sep 17 00:00:00 2001 From: Krunoslav Zaher Date: Fri, 25 Dec 2015 19:32:52 -0800 Subject: [PATCH] RxTests compiles first time on Linux. --- RxTests/Event+Equatable.swift | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/RxTests/Event+Equatable.swift b/RxTests/Event+Equatable.swift index d5ce04ce..5a69734a 100644 --- a/RxTests/Event+Equatable.swift +++ b/RxTests/Event+Equatable.swift @@ -19,18 +19,24 @@ public func == (lhs: Event, rhs: Event) -> switch (lhs, rhs) { case (.Completed, .Completed): return true case (.Error(let e1), .Error(let e2)): - let error1 = e1 as NSError - let error2 = e2 as NSError - // if the references are equal, then it's the same object - if let lhsObject = lhs as? AnyObject, rhsObject = rhs as? AnyObject where lhsObject === rhsObject { + if let lhsObject = lhs as? AnyObject, + rhsObject = rhs as? AnyObject + where lhsObject === rhsObject { return true } - - return error1.domain == error2.domain - && error1.code == error2.code - && "\(e1)" == "\(e2)" + + #if os(Linux) + return "\(e1)" == "\(e2)" + #else + let error1 = e1 as NSError + let error2 = e2 as NSError + + return error1.domain == error2.domain + && error1.code == error2.code + && "\(e1)" == "\(e2)" + #endif case (.Next(let v1), .Next(let v2)): return v1 == v2 default: return false } -} \ No newline at end of file +}