File tree Expand file tree Collapse file tree 2 files changed +36
-25
lines changed
AWSPluginsCoreTests/Model/Support
AWSPluginsCore/Model/Support Expand file tree Collapse file tree 2 files changed +36
-25
lines changed Original file line number Diff line number Diff line change @@ -134,31 +134,26 @@ extension QueryOperator {
134
134
135
135
extension Persistable {
136
136
internal func graphQLValue( ) -> Any {
137
- let value = self
138
-
139
- if let value = value as? Bool {
140
- return value
141
- }
142
-
143
- if let value = value as? Temporal . Date {
144
- return value . iso8601String
145
- }
146
-
147
- if let value = value as? Double {
148
- return Decimal ( value )
149
- }
150
-
151
- if let value = value as? Int {
152
- return value
153
- }
154
-
155
- if let value = value as? String {
156
- return value
137
+ switch self {
138
+ case is Bool :
139
+ return self
140
+ case let double as Double :
141
+ return Decimal ( double )
142
+ case is Int :
143
+ return self
144
+ case is String :
145
+ return self
146
+ case let temporalDate as Temporal . Date :
147
+ return temporalDate . iso8601String
148
+ case let temporalDateTime as Temporal . DateTime :
149
+ return temporalDateTime . iso8601String
150
+ case let temporalTime as Temporal . Time :
151
+ return temporalTime . iso8601String
152
+ default :
153
+ preconditionFailure ( """
154
+ Value \( String ( describing : self ) ) of type \( String ( describing : type ( of : self ) ) ) \
155
+ is not a compatible type.
156
+ """ )
157
157
}
158
-
159
- preconditionFailure ( """
160
- Value \( String ( describing: value) ) of type \( String ( describing: type ( of: value) ) )
161
- is not a compatible type.
162
- """ )
163
158
}
164
159
}
Original file line number Diff line number Diff line change @@ -176,4 +176,20 @@ class QueryPredicateGraphQLTests: XCTestCase {
176
176
177
177
XCTAssert ( titleFilter [ " beginsWith " ] as? String == " Title " )
178
178
}
179
+
180
+ func testSupportedPredicateSupportsDate( ) throws {
181
+ let date = try Temporal . Date ( iso8601String: " 2019-11-23 " )
182
+ XCTAssertNotNil ( Post . keys. createdAt == date)
183
+ }
184
+
185
+ func testSupportedPredicateSupportsDateTime( ) throws {
186
+ let dateTime = try Temporal . DateTime ( iso8601String: " 2019-11-23T02:06:50.689Z " )
187
+ XCTAssertNotNil ( Post . keys. createdAt == dateTime)
188
+ }
189
+
190
+ func testSupportedPredicateSupportsTime( ) throws {
191
+ let time = try Temporal . Time ( iso8601String: " 02:06:50.689 " )
192
+ XCTAssertNotNil ( Post . keys. createdAt == time)
193
+ }
194
+
179
195
}
You can’t perform that action at this time.
0 commit comments