@@ -279,12 +279,12 @@ class QueryTests: XCTestCase {
279
279
func test_insert_encodable( ) throws {
280
280
let emails = Table ( " emails " )
281
281
let value = TestCodable ( int: 1 , string: " 2 " , bool: true , float: 3 , double: 4 ,
282
- date: Date ( timeIntervalSince1970: 0 ) , optional: nil , sub: nil )
282
+ date: Date ( timeIntervalSince1970: 0 ) , uuid : testUUIDValue , optional: nil , sub: nil )
283
283
let insert = try emails. insert ( value)
284
284
assertSQL (
285
285
"""
286
- INSERT INTO \" emails \" ( \" int \" , \" string \" , \" bool \" , \" float \" , \" double \" , \" date \" )
287
- VALUES (1, '2', 1, 3.0, 4.0, '1970-01-01T00:00:00.000')
286
+ INSERT INTO \" emails \" ( \" int \" , \" string \" , \" bool \" , \" float \" , \" double \" , \" date \" , \" uuid \" )
287
+ VALUES (1, '2', 1, 3.0, 4.0, '1970-01-01T00:00:00.000', 'E621E1F8-C36C-495A-93FC-0C247A3E6E5F' )
288
288
""" . replacingOccurrences ( of: " \n " , with: " " ) ,
289
289
insert
290
290
)
@@ -294,16 +294,17 @@ class QueryTests: XCTestCase {
294
294
func test_insert_encodable_with_nested_encodable( ) throws {
295
295
let emails = Table ( " emails " )
296
296
let value1 = TestCodable ( int: 1 , string: " 2 " , bool: true , float: 3 , double: 4 ,
297
- date: Date ( timeIntervalSince1970: 0 ) , optional: nil , sub: nil )
297
+ date: Date ( timeIntervalSince1970: 0 ) , uuid : testUUIDValue , optional: nil , sub: nil )
298
298
let value = TestCodable ( int: 1 , string: " 2 " , bool: true , float: 3 , double: 4 ,
299
- date: Date ( timeIntervalSince1970: 0 ) , optional: " optional " , sub: value1)
299
+ date: Date ( timeIntervalSince1970: 0 ) , uuid : testUUIDValue , optional: " optional " , sub: value1)
300
300
let insert = try emails. insert ( value)
301
301
let encodedJSON = try JSONEncoder ( ) . encode ( value1)
302
302
let encodedJSONString = String ( data: encodedJSON, encoding: . utf8) !
303
303
assertSQL (
304
304
"""
305
- INSERT INTO \" emails \" ( \" int \" , \" string \" , \" bool \" , \" float \" , \" double \" , \" date \" , \" optional \" ,
306
- \" sub \" ) VALUES (1, '2', 1, 3.0, 4.0, '1970-01-01T00:00:00.000', 'optional', ' \( encodedJSONString) ')
305
+ INSERT INTO \" emails \" ( \" int \" , \" string \" , \" bool \" , \" float \" , \" double \" , \" date \" , \" uuid \" , \" optional \" ,
306
+ \" sub \" ) VALUES (1, '2', 1, 3.0, 4.0, '1970-01-01T00:00:00.000', 'E621E1F8-C36C-495A-93FC-0C247A3E6E5F',
307
+ 'optional', ' \( encodedJSONString) ')
307
308
""" . replacingOccurrences ( of: " \n " , with: " " ) ,
308
309
insert
309
310
)
@@ -350,14 +351,15 @@ class QueryTests: XCTestCase {
350
351
let emails = Table ( " emails " )
351
352
let string = Expression < String > ( " string " )
352
353
let value = TestCodable ( int: 1 , string: " 2 " , bool: true , float: 3 , double: 4 ,
353
- date: Date ( timeIntervalSince1970: 0 ) , optional: nil , sub: nil )
354
+ date: Date ( timeIntervalSince1970: 0 ) , uuid : testUUIDValue , optional: nil , sub: nil )
354
355
let insert = try emails. upsert ( value, onConflictOf: string)
355
356
assertSQL (
356
357
"""
357
- INSERT INTO \" emails \" ( \" int \" , \" string \" , \" bool \" , \" float \" , \" double \" , \" date \" )
358
- VALUES (1, '2', 1, 3.0, 4.0, '1970-01-01T00:00:00.000') ON CONFLICT ( \" string \" )
358
+ INSERT INTO \" emails \" ( \" int \" , \" string \" , \" bool \" , \" float \" , \" double \" , \" date \" , \" uuid \" )
359
+ VALUES (1, '2', 1, 3.0, 4.0, '1970-01-01T00:00:00.000', 'E621E1F8-C36C-495A-93FC-0C247A3E6E5F' ) ON CONFLICT ( \" string \" )
359
360
DO UPDATE SET \" int \" = \" excluded \" . \" int \" , \" bool \" = \" excluded \" . \" bool \" ,
360
- \" float \" = \" excluded \" . \" float \" , \" double \" = \" excluded \" . \" double \" , \" date \" = \" excluded \" . \" date \"
361
+ \" float \" = \" excluded \" . \" float \" , \" double \" = \" excluded \" . \" double \" , \" date \" = \" excluded \" . \" date \" ,
362
+ \" uuid \" = \" excluded \" . \" uuid \"
361
363
""" . replacingOccurrences ( of: " \n " , with: " " ) ,
362
364
insert
363
365
)
@@ -366,17 +368,18 @@ class QueryTests: XCTestCase {
366
368
func test_insert_many_encodable( ) throws {
367
369
let emails = Table ( " emails " )
368
370
let value1 = TestCodable ( int: 1 , string: " 2 " , bool: true , float: 3 , double: 4 ,
369
- date: Date ( timeIntervalSince1970: 0 ) , optional: nil , sub: nil )
371
+ date: Date ( timeIntervalSince1970: 0 ) , uuid : testUUIDValue , optional: nil , sub: nil )
370
372
let value2 = TestCodable ( int: 2 , string: " 3 " , bool: true , float: 3 , double: 5 ,
371
- date: Date ( timeIntervalSince1970: 0 ) , optional: nil , sub: nil )
373
+ date: Date ( timeIntervalSince1970: 0 ) , uuid : testUUIDValue , optional: nil , sub: nil )
372
374
let value3 = TestCodable ( int: 3 , string: " 4 " , bool: true , float: 3 , double: 6 ,
373
- date: Date ( timeIntervalSince1970: 0 ) , optional: nil , sub: nil )
375
+ date: Date ( timeIntervalSince1970: 0 ) , uuid : testUUIDValue , optional: nil , sub: nil )
374
376
let insert = try emails. insertMany ( [ value1, value2, value3] )
375
377
assertSQL (
376
378
"""
377
- INSERT INTO \" emails \" ( \" int \" , \" string \" , \" bool \" , \" float \" , \" double \" , \" date \" )
378
- VALUES (1, '2', 1, 3.0, 4.0, '1970-01-01T00:00:00.000'), (2, '3', 1, 3.0, 5.0, '1970-01-01T00:00:00.000'),
379
- (3, '4', 1, 3.0, 6.0, '1970-01-01T00:00:00.000')
379
+ INSERT INTO \" emails \" ( \" int \" , \" string \" , \" bool \" , \" float \" , \" double \" , \" date \" , \" uuid \" )
380
+ VALUES (1, '2', 1, 3.0, 4.0, '1970-01-01T00:00:00.000', 'E621E1F8-C36C-495A-93FC-0C247A3E6E5F'),
381
+ (2, '3', 1, 3.0, 5.0, '1970-01-01T00:00:00.000', 'E621E1F8-C36C-495A-93FC-0C247A3E6E5F'),
382
+ (3, '4', 1, 3.0, 6.0, '1970-01-01T00:00:00.000', 'E621E1F8-C36C-495A-93FC-0C247A3E6E5F')
380
383
""" . replacingOccurrences ( of: " \n " , with: " " ) ,
381
384
insert
382
385
)
@@ -399,12 +402,12 @@ class QueryTests: XCTestCase {
399
402
func test_update_encodable( ) throws {
400
403
let emails = Table ( " emails " )
401
404
let value = TestCodable ( int: 1 , string: " 2 " , bool: true , float: 3 , double: 4 ,
402
- date: Date ( timeIntervalSince1970: 0 ) , optional: nil , sub: nil )
405
+ date: Date ( timeIntervalSince1970: 0 ) , uuid : testUUIDValue , optional: nil , sub: nil )
403
406
let update = try emails. update ( value)
404
407
assertSQL (
405
408
"""
406
409
UPDATE \" emails \" SET \" int \" = 1, \" string \" = '2', \" bool \" = 1, \" float \" = 3.0, \" double \" = 4.0,
407
- \" date \" = '1970-01-01T00:00:00.000'
410
+ \" date \" = '1970-01-01T00:00:00.000', \" uuid \" = 'E621E1F8-C36C-495A-93FC-0C247A3E6E5F'
408
411
""" . replacingOccurrences ( of: " \n " , with: " " ) ,
409
412
update
410
413
)
@@ -413,9 +416,9 @@ class QueryTests: XCTestCase {
413
416
func test_update_encodable_with_nested_encodable( ) throws {
414
417
let emails = Table ( " emails " )
415
418
let value1 = TestCodable ( int: 1 , string: " 2 " , bool: true , float: 3 , double: 4 ,
416
- date: Date ( timeIntervalSince1970: 0 ) , optional: nil , sub: nil )
419
+ date: Date ( timeIntervalSince1970: 0 ) , uuid : testUUIDValue , optional: nil , sub: nil )
417
420
let value = TestCodable ( int: 1 , string: " 2 " , bool: true , float: 3 , double: 4 ,
418
- date: Date ( timeIntervalSince1970: 0 ) , optional: nil , sub: value1)
421
+ date: Date ( timeIntervalSince1970: 0 ) , uuid : testUUIDValue , optional: nil , sub: value1)
419
422
let update = try emails. update ( value)
420
423
421
424
// NOTE: As Linux JSON decoding doesn't order keys the same way, we need to check prefix, suffix,
@@ -424,7 +427,7 @@ class QueryTests: XCTestCase {
424
427
let expectedPrefix =
425
428
"""
426
429
UPDATE \" emails \" SET \" int \" = 1, \" string \" = '2', \" bool \" = 1, \" float \" = 3.0, \" double \" = 4.0,
427
- \" date \" = '1970-01-01T00:00:00.000', \" sub \" = '
430
+ \" date \" = '1970-01-01T00:00:00.000', \" uuid \" = 'E621E1F8-C36C-495A-93FC-0C247A3E6E5F', \" sub \" = '
428
431
""" . replacingOccurrences ( of: " \n " , with: " " )
429
432
let expectedSuffix = " ' "
430
433
0 commit comments