4
4
5
5
package io .airbyte .integrations .base .destination .typing_deduping ;
6
6
7
+ import static org .junit .jupiter .api .Assertions .assertAll ;
8
+
7
9
import com .fasterxml .jackson .databind .JsonNode ;
8
10
import com .fasterxml .jackson .databind .node .ObjectNode ;
9
11
import com .google .common .collect .ImmutableMap ;
@@ -226,7 +228,7 @@ public void fullRefreshOverwrite() throws Exception {
226
228
227
229
runSync (catalog , messages1 );
228
230
229
- final List <JsonNode > expectedRawRecords1 = readRecords ("dat/sync1_expectedrecords_nondedup_raw .jsonl" );
231
+ final List <JsonNode > expectedRawRecords1 = readRecords ("dat/sync1_expectedrecords_raw .jsonl" );
230
232
final List <JsonNode > expectedFinalRecords1 = readRecords ("dat/sync1_expectedrecords_nondedup_final.jsonl" );
231
233
verifySyncResult (expectedRawRecords1 , expectedFinalRecords1 );
232
234
@@ -261,7 +263,7 @@ public void fullRefreshAppend() throws Exception {
261
263
262
264
runSync (catalog , messages1 );
263
265
264
- final List <JsonNode > expectedRawRecords1 = readRecords ("dat/sync1_expectedrecords_nondedup_raw .jsonl" );
266
+ final List <JsonNode > expectedRawRecords1 = readRecords ("dat/sync1_expectedrecords_raw .jsonl" );
265
267
final List <JsonNode > expectedFinalRecords1 = readRecords ("dat/sync1_expectedrecords_nondedup_final.jsonl" );
266
268
verifySyncResult (expectedRawRecords1 , expectedFinalRecords1 );
267
269
@@ -270,7 +272,7 @@ public void fullRefreshAppend() throws Exception {
270
272
271
273
runSync (catalog , messages2 );
272
274
273
- final List <JsonNode > expectedRawRecords2 = readRecords ("dat/sync2_expectedrecords_fullrefresh_append_raw .jsonl" );
275
+ final List <JsonNode > expectedRawRecords2 = readRecords ("dat/sync2_expectedrecords_raw .jsonl" );
274
276
final List <JsonNode > expectedFinalRecords2 = readRecords ("dat/sync2_expectedrecords_fullrefresh_append_final.jsonl" );
275
277
verifySyncResult (expectedRawRecords2 , expectedFinalRecords2 );
276
278
}
@@ -300,7 +302,7 @@ public void incrementalAppend() throws Exception {
300
302
301
303
runSync (catalog , messages1 );
302
304
303
- final List <JsonNode > expectedRawRecords1 = readRecords ("dat/sync1_expectedrecords_nondedup_raw .jsonl" );
305
+ final List <JsonNode > expectedRawRecords1 = readRecords ("dat/sync1_expectedrecords_raw .jsonl" );
304
306
final List <JsonNode > expectedFinalRecords1 = readRecords ("dat/sync1_expectedrecords_nondedup_final.jsonl" );
305
307
verifySyncResult (expectedRawRecords1 , expectedFinalRecords1 );
306
308
@@ -309,7 +311,7 @@ public void incrementalAppend() throws Exception {
309
311
310
312
runSync (catalog , messages2 );
311
313
312
- final List <JsonNode > expectedRawRecords2 = readRecords ("dat/sync2_expectedrecords_fullrefresh_append_raw .jsonl" );
314
+ final List <JsonNode > expectedRawRecords2 = readRecords ("dat/sync2_expectedrecords_raw .jsonl" );
313
315
final List <JsonNode > expectedFinalRecords2 = readRecords ("dat/sync2_expectedrecords_fullrefresh_append_final.jsonl" );
314
316
verifySyncResult (expectedRawRecords2 , expectedFinalRecords2 );
315
317
}
@@ -337,7 +339,7 @@ public void incrementalDedup() throws Exception {
337
339
338
340
runSync (catalog , messages1 );
339
341
340
- final List <JsonNode > expectedRawRecords1 = readRecords ("dat/sync1_expectedrecords_dedup_raw .jsonl" );
342
+ final List <JsonNode > expectedRawRecords1 = readRecords ("dat/sync1_expectedrecords_raw .jsonl" );
341
343
final List <JsonNode > expectedFinalRecords1 = readRecords ("dat/sync1_expectedrecords_dedup_final.jsonl" );
342
344
verifySyncResult (expectedRawRecords1 , expectedFinalRecords1 );
343
345
@@ -346,7 +348,7 @@ public void incrementalDedup() throws Exception {
346
348
347
349
runSync (catalog , messages2 );
348
350
349
- final List <JsonNode > expectedRawRecords2 = readRecords ("dat/sync2_expectedrecords_incremental_dedup_raw .jsonl" );
351
+ final List <JsonNode > expectedRawRecords2 = readRecords ("dat/sync2_expectedrecords_raw .jsonl" );
350
352
final List <JsonNode > expectedFinalRecords2 = readRecords ("dat/sync2_expectedrecords_incremental_dedup_final.jsonl" );
351
353
verifySyncResult (expectedRawRecords2 , expectedFinalRecords2 );
352
354
}
@@ -372,7 +374,7 @@ public void incrementalDedupDefaultNamespace() throws Exception {
372
374
373
375
runSync (catalog , messages1 );
374
376
375
- final List <JsonNode > expectedRawRecords1 = readRecords ("dat/sync1_expectedrecords_dedup_raw .jsonl" );
377
+ final List <JsonNode > expectedRawRecords1 = readRecords ("dat/sync1_expectedrecords_raw .jsonl" );
376
378
final List <JsonNode > expectedFinalRecords1 = readRecords ("dat/sync1_expectedrecords_dedup_final.jsonl" );
377
379
verifySyncResult (expectedRawRecords1 , expectedFinalRecords1 , null , streamName );
378
380
@@ -381,7 +383,7 @@ public void incrementalDedupDefaultNamespace() throws Exception {
381
383
382
384
runSync (catalog , messages2 );
383
385
384
- final List <JsonNode > expectedRawRecords2 = readRecords ("dat/sync2_expectedrecords_incremental_dedup_raw .jsonl" );
386
+ final List <JsonNode > expectedRawRecords2 = readRecords ("dat/sync2_expectedrecords_raw .jsonl" );
385
387
final List <JsonNode > expectedFinalRecords2 = readRecords ("dat/sync2_expectedrecords_incremental_dedup_final.jsonl" );
386
388
verifySyncResult (expectedRawRecords2 , expectedFinalRecords2 , null , streamName );
387
389
}
@@ -424,7 +426,7 @@ public void testIncrementalSyncDropOneColumn() throws Exception {
424
426
425
427
runSync (catalog , messages1 );
426
428
427
- final List <JsonNode > expectedRawRecords1 = readRecords ("dat/sync1_expectedrecords_nondedup_raw .jsonl" );
429
+ final List <JsonNode > expectedRawRecords1 = readRecords ("dat/sync1_expectedrecords_raw .jsonl" );
428
430
final List <JsonNode > expectedFinalRecords1 = readRecords ("dat/sync1_expectedrecords_nondedup_final.jsonl" );
429
431
verifySyncResult (expectedRawRecords1 , expectedFinalRecords1 );
430
432
@@ -437,7 +439,7 @@ public void testIncrementalSyncDropOneColumn() throws Exception {
437
439
runSync (catalog , messages2 );
438
440
439
441
// The raw data is unaffected by the schema, but the final table should not have a `name` column.
440
- final List <JsonNode > expectedRawRecords2 = readRecords ("dat/sync2_expectedrecords_fullrefresh_append_raw .jsonl" );
442
+ final List <JsonNode > expectedRawRecords2 = readRecords ("dat/sync2_expectedrecords_raw .jsonl" );
441
443
final List <JsonNode > expectedFinalRecords2 = readRecords ("dat/sync2_expectedrecords_fullrefresh_append_final.jsonl" ).stream ()
442
444
.peek (record -> ((ObjectNode ) record ).remove (getSqlGenerator ().buildColumnId ("name" ).name ()))
443
445
.toList ();
@@ -500,12 +502,12 @@ public void incrementalDedupIdenticalName() throws Exception {
500
502
runSync (catalog , messages1 );
501
503
502
504
verifySyncResult (
503
- readRecords ("dat/sync1_expectedrecords_dedup_raw .jsonl" ),
505
+ readRecords ("dat/sync1_expectedrecords_raw .jsonl" ),
504
506
readRecords ("dat/sync1_expectedrecords_dedup_final.jsonl" ),
505
507
namespace1 ,
506
508
streamName );
507
509
verifySyncResult (
508
- readRecords ("dat/sync1_expectedrecords_dedup_raw2 .jsonl" ),
510
+ readRecords ("dat/sync1_expectedrecords_raw2 .jsonl" ),
509
511
readRecords ("dat/sync1_expectedrecords_dedup_final2.jsonl" ),
510
512
namespace2 ,
511
513
streamName );
@@ -518,12 +520,12 @@ public void incrementalDedupIdenticalName() throws Exception {
518
520
runSync (catalog , messages2 );
519
521
520
522
verifySyncResult (
521
- readRecords ("dat/sync2_expectedrecords_incremental_dedup_raw .jsonl" ),
523
+ readRecords ("dat/sync2_expectedrecords_raw .jsonl" ),
522
524
readRecords ("dat/sync2_expectedrecords_incremental_dedup_final.jsonl" ),
523
525
namespace1 ,
524
526
streamName );
525
527
verifySyncResult (
526
- readRecords ("dat/sync2_expectedrecords_incremental_dedup_raw2 .jsonl" ),
528
+ readRecords ("dat/sync2_expectedrecords_raw2 .jsonl" ),
527
529
readRecords ("dat/sync2_expectedrecords_incremental_dedup_final2.jsonl" ),
528
530
namespace2 ,
529
531
streamName );
@@ -585,16 +587,15 @@ public void identicalNameSimultaneousSync() throws Exception {
585
587
// And this will dump sync2's entire stdout to our stdout
586
588
endSync (sync2 );
587
589
588
- verifySyncResult (
589
- readRecords ("dat/sync1_expectedrecords_dedup_raw.jsonl" ),
590
- readRecords ("dat/sync1_expectedrecords_dedup_final.jsonl" ),
591
- namespace1 ,
592
- streamName );
593
- verifySyncResult (
594
- readRecords ("dat/sync1_expectedrecords_dedup_raw2.jsonl" ),
595
- readRecords ("dat/sync1_expectedrecords_dedup_final2.jsonl" ),
596
- namespace2 ,
597
- streamName );
590
+ // For simplicity, don't verify the raw table. Assume that if the final table is correct, then
591
+ // the raw data is correct. This is generally a safe assumption.
592
+ assertAll (
593
+ () -> DIFFER .diffFinalTableRecords (
594
+ readRecords ("dat/sync1_expectedrecords_dedup_final.jsonl" ),
595
+ dumpFinalTableRecords (namespace1 , streamName )),
596
+ () -> DIFFER .diffFinalTableRecords (
597
+ readRecords ("dat/sync1_expectedrecords_dedup_final2.jsonl" ),
598
+ dumpFinalTableRecords (namespace2 , streamName )));
598
599
}
599
600
600
601
@ Test
0 commit comments