File tree Expand file tree Collapse file tree 3 files changed +37
-1
lines changed Expand file tree Collapse file tree 3 files changed +37
-1
lines changed Original file line number Diff line number Diff line change @@ -245,3 +245,21 @@ public class AsyncGraphQLQueryPager<Model>: Publisher {
245
245
publisher. subscribe ( subscriber)
246
246
}
247
247
}
248
+
249
+ extension AsyncGraphQLQueryPager : Equatable where Model: Equatable {
250
+ public static func == ( lhs: AsyncGraphQLQueryPager < Model > , rhs: AsyncGraphQLQueryPager < Model > ) -> Bool {
251
+ let left = lhs. _subject. value
252
+ let right = rhs. _subject. value
253
+
254
+ switch ( left, right) {
255
+ case ( . success( ( let leftValue, let leftSource) ) , . success( ( let rightValue, let rightSource) ) ) :
256
+ return leftValue == rightValue && leftSource == rightSource
257
+ case ( . failure( let leftError) , . failure( let rightError) ) :
258
+ return leftError. localizedDescription == rightError. localizedDescription
259
+ case ( . none, . none) :
260
+ return true
261
+ default :
262
+ return false
263
+ }
264
+ }
265
+ }
Original file line number Diff line number Diff line change @@ -249,3 +249,21 @@ public class GraphQLQueryPager<Model>: Publisher {
249
249
publisher. subscribe ( subscriber)
250
250
}
251
251
}
252
+
253
+ extension GraphQLQueryPager : Equatable where Model: Equatable {
254
+ public static func == ( lhs: GraphQLQueryPager < Model > , rhs: GraphQLQueryPager < Model > ) -> Bool {
255
+ let left = lhs. _subject. value
256
+ let right = rhs. _subject. value
257
+
258
+ switch ( left, right) {
259
+ case ( . success( ( let leftValue, let leftSource) ) , . success( ( let rightValue, let rightSource) ) ) :
260
+ return leftValue == rightValue && leftSource == rightSource
261
+ case ( . failure( let leftError) , . failure( let rightError) ) :
262
+ return leftError. localizedDescription == rightError. localizedDescription
263
+ case ( . none, . none) :
264
+ return true
265
+ default :
266
+ return false
267
+ }
268
+ }
269
+ }
Original file line number Diff line number Diff line change 1
- public enum UpdateSource {
1
+ public enum UpdateSource : Hashable {
2
2
case fetch, cache
3
3
}
You can’t perform that action at this time.
0 commit comments