@@ -8,7 +8,7 @@ class PostgreSQLConnectionTests: XCTestCase {
88 func testVersion( ) throws {
99 let ( client, eventLoop) = try PostgreSQLConnection . makeTest ( )
1010 let results = try client. simpleQuery ( " SELECT version(); " ) . await ( on: eventLoop)
11- try XCTAssert ( results [ 0 ] [ " version " ] ? . decode ( String . self) . contains ( " 10.1 " ) == true )
11+ try XCTAssert ( results [ 0 ] [ " version " ] ? . decode ( String . self) . contains ( " 10. " ) == true )
1212 }
1313
1414 func testSelectTypes( ) throws {
@@ -270,13 +270,28 @@ class PostgreSQLConnectionTests: XCTestCase {
270270 }
271271 }
272272
273+ func testNull( ) throws {
274+ let ( client, eventLoop) = try PostgreSQLConnection . makeTest ( )
275+ _ = try client. query ( " drop table if exists nulltest; " ) . await ( on: eventLoop)
276+ let createResult = try client. query ( " create table nulltest (i integer not null, d timestamp); " ) . await ( on: eventLoop)
277+ XCTAssertEqual ( createResult. count, 0 )
278+ let insertResult = try ! client. query ( " insert into nulltest (i, d) VALUES ($1, $2) " , [
279+ PostgreSQLData ( type: . int2, format: . binary, data: Data ( [ 0x00 , 0x01 ] ) ) ,
280+ PostgreSQLData ( type: . timestamp, format: . binary, data: nil ) ,
281+ ] ) . await ( on: eventLoop)
282+ XCTAssertEqual ( insertResult. count, 0 )
283+ let parameterizedResult = try ! client. query ( " select * from nulltest " ) . await ( on: eventLoop)
284+ XCTAssertEqual ( parameterizedResult. count, 1 )
285+ }
286+
273287 static var allTests = [
274288 ( " testVersion " , testVersion) ,
275289 ( " testSelectTypes " , testSelectTypes) ,
276290 ( " testParse " , testParse) ,
277291 ( " testTypes " , testTypes) ,
278292 ( " testParameterizedTypes " , testParameterizedTypes) ,
279293 ( " testStruct " , testStruct) ,
294+ ( " testNull " , testNull) ,
280295 ]
281296}
282297
0 commit comments