@@ -210,7 +210,7 @@ class PostgreSQLClientTests: XCTestCase {
210
210
] ) . await ( on: eventLoop)
211
211
XCTAssertEqual ( insertResult. count, 0 )
212
212
213
- let parameterizedResult = try ! client. parameterizedQuery ( " select * from kitchen_sink " ) . await ( on: eventLoop)
213
+ let parameterizedResult = try client. parameterizedQuery ( " select * from kitchen_sink " ) . await ( on: eventLoop)
214
214
if parameterizedResult. count == 1 {
215
215
let row = parameterizedResult [ 0 ]
216
216
XCTAssertEqual ( row [ " smallint " ] , . int16( 1 ) )
@@ -230,12 +230,29 @@ class PostgreSQLClientTests: XCTestCase {
230
230
}
231
231
}
232
232
233
+ func testParameterizedEncodable( ) throws {
234
+ let ( client, eventLoop) = try PostgreSQLClient . makeTest ( )
235
+ _ = try client. query ( " drop table if exists foo; " ) . await ( on: eventLoop)
236
+ let createResult = try client. query ( " create table foo (fooid integer); " ) . await ( on: eventLoop)
237
+ XCTAssertEqual ( createResult. count, 0 )
238
+ let insertResult = try client. parameterizedQuery ( " insert into foo values ($1); " , encoding: [ Int ( 123 ) ] ) . await ( on: eventLoop)
239
+ XCTAssertEqual ( insertResult. count, 0 )
240
+ let parameterizedResult = try client. parameterizedQuery ( " select * from foo " ) . await ( on: eventLoop)
241
+ if parameterizedResult. count == 1 {
242
+ let row = parameterizedResult [ 0 ]
243
+ XCTAssertEqual ( row [ " fooid " ] , . int32( 123 ) )
244
+ } else {
245
+ XCTFail ( " parameterized result count is: \( parameterizedResult. count) " )
246
+ }
247
+ }
248
+
233
249
static var allTests = [
234
250
( " testVersion " , testVersion) ,
235
251
( " testSelectTypes " , testSelectTypes) ,
236
252
( " testParse " , testParse) ,
237
253
( " testTypes " , testTypes) ,
238
254
( " testParameterizedTypes " , testParameterizedTypes) ,
255
+ ( " testParameterizedEncodable " , testParameterizedEncodable) ,
239
256
]
240
257
}
241
258
0 commit comments