1
1
package gov.cdc.prime.router.fhirengine.azure
2
2
3
3
import assertk.assertThat
4
+ import assertk.assertions.hasSize
4
5
import assertk.assertions.isEqualTo
6
+ import assertk.assertions.isInstanceOf
5
7
import assertk.assertions.isNotEqualTo
6
8
import assertk.assertions.isNotNull
7
9
import assertk.assertions.isNull
@@ -22,7 +24,10 @@ import gov.cdc.prime.router.azure.db.enums.TaskAction
22
24
import gov.cdc.prime.router.azure.db.tables.Task
23
25
import gov.cdc.prime.router.azure.observability.event.AzureEventService
24
26
import gov.cdc.prime.router.azure.observability.event.InMemoryAzureEventService
27
+ import gov.cdc.prime.router.azure.observability.event.ReportStreamEventName
28
+ import gov.cdc.prime.router.azure.observability.event.ReportStreamEventProperties
25
29
import gov.cdc.prime.router.azure.observability.event.ReportStreamEventService
30
+ import gov.cdc.prime.router.azure.observability.event.ReportStreamItemEvent
26
31
import gov.cdc.prime.router.cli.tests.CompareData
27
32
import gov.cdc.prime.router.common.TestcontainersUtils
28
33
import gov.cdc.prime.router.common.UniversalPipelineTestUtils
@@ -191,6 +196,21 @@ class FHIRTranslatorIntegrationTests : Logging {
191
196
QueueAccess .sendMessage(any(), any())
192
197
}
193
198
199
+ // check events
200
+ assertThat(azureEventService.reportStreamEvents[ReportStreamEventName .ITEM_TRANSFORMED ]!! ).hasSize(1 )
201
+ assertThat(
202
+ azureEventService
203
+ .reportStreamEvents[ReportStreamEventName .ITEM_TRANSFORMED ]!! .first()
204
+ ).isInstanceOf<ReportStreamItemEvent >()
205
+ val event = azureEventService
206
+ .reportStreamEvents[ReportStreamEventName .ITEM_TRANSFORMED ]!! .first() as ReportStreamItemEvent
207
+ assertThat(event.params[ReportStreamEventProperties .ORIGINAL_FORMAT ]).isEqualTo(" FHIR" )
208
+ assertThat(event.params[ReportStreamEventProperties .TARGET_FORMAT ]).isEqualTo(" HL7" )
209
+ assertThat(event.params[ReportStreamEventProperties .RECEIVER_NAME ]).isEqualTo(" phd.x" )
210
+ val enrichments = event.params[ReportStreamEventProperties .ENRICHMENTS ] as List <* >
211
+ assertThat(enrichments).hasSize(1 )
212
+ assertThat(enrichments.first()).isEqualTo(receiverSetupData.first().schemaName)
213
+
194
214
// check action table
195
215
UniversalPipelineTestUtils .checkActionTable(listOf (TaskAction .receive, TaskAction .translate))
196
216
@@ -289,6 +309,21 @@ class FHIRTranslatorIntegrationTests : Logging {
289
309
QueueAccess .sendMessage(any(), any())
290
310
}
291
311
312
+ // check events
313
+ assertThat(azureEventService.reportStreamEvents[ReportStreamEventName .ITEM_TRANSFORMED ]!! ).hasSize(1 )
314
+ assertThat(
315
+ azureEventService
316
+ .reportStreamEvents[ReportStreamEventName .ITEM_TRANSFORMED ]!! .first()
317
+ ).isInstanceOf<ReportStreamItemEvent >()
318
+ val event = azureEventService
319
+ .reportStreamEvents[ReportStreamEventName .ITEM_TRANSFORMED ]!! .first() as ReportStreamItemEvent
320
+ assertThat(event.params[ReportStreamEventProperties .ORIGINAL_FORMAT ]).isEqualTo(" FHIR" )
321
+ assertThat(event.params[ReportStreamEventProperties .TARGET_FORMAT ]).isEqualTo(" HL7" )
322
+ assertThat(event.params[ReportStreamEventProperties .RECEIVER_NAME ]).isEqualTo(" phd.x" )
323
+ val enrichments = event.params[ReportStreamEventProperties .ENRICHMENTS ] as List <* >
324
+ assertThat(enrichments).hasSize(1 )
325
+ assertThat(enrichments.first()).isEqualTo(receiverSetupData.first().schemaName)
326
+
292
327
// check action table
293
328
UniversalPipelineTestUtils .checkActionTable(listOf (TaskAction .receive, TaskAction .translate))
294
329
@@ -364,6 +399,21 @@ class FHIRTranslatorIntegrationTests : Logging {
364
399
QueueAccess .sendMessage(any(), any())
365
400
}
366
401
402
+ // check events
403
+ assertThat(azureEventService.reportStreamEvents[ReportStreamEventName .ITEM_TRANSFORMED ]!! ).hasSize(1 )
404
+ assertThat(
405
+ azureEventService
406
+ .reportStreamEvents[ReportStreamEventName .ITEM_TRANSFORMED ]!! .first()
407
+ ).isInstanceOf<ReportStreamItemEvent >()
408
+ val event = azureEventService
409
+ .reportStreamEvents[ReportStreamEventName .ITEM_TRANSFORMED ]!! .first() as ReportStreamItemEvent
410
+ assertThat(event.params[ReportStreamEventProperties .ORIGINAL_FORMAT ]).isEqualTo(" FHIR" )
411
+ assertThat(event.params[ReportStreamEventProperties .TARGET_FORMAT ]).isEqualTo(" FHIR" )
412
+ assertThat(event.params[ReportStreamEventProperties .RECEIVER_NAME ]).isEqualTo(" phd.x" )
413
+ val enrichments = event.params[ReportStreamEventProperties .ENRICHMENTS ] as List <* >
414
+ assertThat(enrichments).hasSize(1 )
415
+ assertThat(enrichments.first()).isEqualTo(receiverSetupData.first().schemaName)
416
+
367
417
// check action table
368
418
UniversalPipelineTestUtils .checkActionTable(listOf (TaskAction .receive, TaskAction .translate))
369
419
@@ -449,6 +499,21 @@ class FHIRTranslatorIntegrationTests : Logging {
449
499
QueueAccess .sendMessage(any(), any())
450
500
}
451
501
502
+ // check events
503
+ assertThat(azureEventService.reportStreamEvents[ReportStreamEventName .ITEM_TRANSFORMED ]!! ).hasSize(1 )
504
+ assertThat(
505
+ azureEventService
506
+ .reportStreamEvents[ReportStreamEventName .ITEM_TRANSFORMED ]!! .first()
507
+ ).isInstanceOf<ReportStreamItemEvent >()
508
+ val event = azureEventService
509
+ .reportStreamEvents[ReportStreamEventName .ITEM_TRANSFORMED ]!! .first() as ReportStreamItemEvent
510
+ assertThat(event.params[ReportStreamEventProperties .ORIGINAL_FORMAT ]).isEqualTo(" FHIR" )
511
+ assertThat(event.params[ReportStreamEventProperties .TARGET_FORMAT ]).isEqualTo(" FHIR" )
512
+ assertThat(event.params[ReportStreamEventProperties .RECEIVER_NAME ]).isEqualTo(" phd.x" )
513
+ val enrichments = event.params[ReportStreamEventProperties .ENRICHMENTS ] as List <* >
514
+ assertThat(enrichments).hasSize(1 )
515
+ assertThat(enrichments.first()).isEqualTo(receiverSetupData.first().schemaName)
516
+
452
517
// check action table
453
518
UniversalPipelineTestUtils .checkActionTable(listOf (TaskAction .receive, TaskAction .translate))
454
519
0 commit comments