From 3b66f42eb2b1b3e7f3ae11718ca6227f86c92214 Mon Sep 17 00:00:00 2001 From: jlidke Date: Wed, 20 Aug 2025 10:47:38 +0200 Subject: feat: configuration of genomDe test submission via 'app.genomDeTestSubmission' = 'true', is implemented, now. (#136) Co-authored-by: Paul-Christian Volkmer --- .../etl/processor/services/ConsentProcessorTest.kt | 38 ++++++++++++++++++++++ 1 file changed, 38 insertions(+) (limited to 'src/test') diff --git a/src/test/kotlin/dev/dnpm/etl/processor/services/ConsentProcessorTest.kt b/src/test/kotlin/dev/dnpm/etl/processor/services/ConsentProcessorTest.kt index 607234d..4d414c5 100644 --- a/src/test/kotlin/dev/dnpm/etl/processor/services/ConsentProcessorTest.kt +++ b/src/test/kotlin/dev/dnpm/etl/processor/services/ConsentProcessorTest.kt @@ -8,6 +8,7 @@ import dev.dnpm.etl.processor.config.JacksonConfig import dev.dnpm.etl.processor.consent.ConsentDomain import dev.dnpm.etl.processor.consent.GicsConsentService import dev.pcvolkmer.mv64e.mtb.Mtb +import dev.pcvolkmer.mv64e.mtb.MvhSubmissionType import dev.pcvolkmer.mv64e.mtb.Patient import org.assertj.core.api.Assertions.assertThat import org.hl7.fhir.r4.model.Bundle @@ -19,6 +20,7 @@ import org.junit.jupiter.api.Test import org.junit.jupiter.api.extension.ExtendWith import org.junit.jupiter.params.ParameterizedTest import org.junit.jupiter.params.provider.CsvSource +import org.junit.jupiter.params.provider.ValueSource import org.mockito.Mock import org.mockito.junit.jupiter.MockitoExtension import org.mockito.kotlin.any @@ -191,4 +193,40 @@ class ConsentProcessorTest { .parseResource(Bundle::class.java, bundle) } + @ParameterizedTest + @ValueSource(booleans = [true, false]) + fun mvSubmissionTypeIsSet(isTestSubmission: Boolean) { + appConfigProperties.genomDeTestSubmission = isTestSubmission + val fixture = + ConsentProcessor( + appConfigProperties, + gIcsConfigProperties, + objectMapper, + fhirContext, + gicsConsentService + ) + + doAnswer { getDummyBroadConsentBundle() }.whenever(gicsConsentService) + .getConsent(any(), any(), eq(ConsentDomain.BROAD_CONSENT)) + + doAnswer { + Bundle().addEntry( + Bundle.BundleEntryComponent().setResource(getDummyGenomDeConsent()) + ) + }.whenever(gicsConsentService) + .getConsent(any(), any(), eq(ConsentDomain.MODELLVORHABEN_64E)) + + val inputMtb = Mtb.builder() + .patient(Patient.builder().id("d611d429-5003-11f0-a144-661e92ac9503").build()).build() + val checkResult = fixture.consentGatedCheckAndTryEmbedding(inputMtb) + assertThat(checkResult).isNotNull + + if (isTestSubmission) + assertThat(inputMtb.metadata.type).isEqualTo(MvhSubmissionType.TEST) + else { + assertThat(inputMtb.metadata.type).isEqualTo(MvhSubmissionType.INITIAL) + } + + } + } -- cgit v1.2.3