From 00097b076bf2214a78ef3cd656fb1b60f12ccf06 Mon Sep 17 00:00:00 2001 From: cigerhed Date: Tue, 10 Sep 2024 08:29:19 +0200 Subject: [PATCH] K1J-146: Updated logic in IntegratedUnitNotificationEvaluator so that it complies with business logic. --- .../IntegratedUnitNotificationEvaluator.java | 2 +- ...tegratedUnitNotificationEvaluatorTest.java | 37 ++++--------------- 2 files changed, 9 insertions(+), 30 deletions(-) diff --git a/web/src/main/java/se/inera/intyg/webcert/web/csintegration/certificate/IntegratedUnitNotificationEvaluator.java b/web/src/main/java/se/inera/intyg/webcert/web/csintegration/certificate/IntegratedUnitNotificationEvaluator.java index 25971b578a..726f237bee 100644 --- a/web/src/main/java/se/inera/intyg/webcert/web/csintegration/certificate/IntegratedUnitNotificationEvaluator.java +++ b/web/src/main/java/se/inera/intyg/webcert/web/csintegration/certificate/IntegratedUnitNotificationEvaluator.java @@ -74,6 +74,6 @@ private boolean evaluateMailNotification(List unitIds, List care return false; } - return activateFrom.isBefore(issuingDate); + return issuingDate.isBefore(activateFrom); } } diff --git a/web/src/test/java/se/inera/intyg/webcert/web/csintegration/certificate/IntegratedUnitNotificationEvaluatorTest.java b/web/src/test/java/se/inera/intyg/webcert/web/csintegration/certificate/IntegratedUnitNotificationEvaluatorTest.java index 2a9b5b4d2e..2939631125 100644 --- a/web/src/test/java/se/inera/intyg/webcert/web/csintegration/certificate/IntegratedUnitNotificationEvaluatorTest.java +++ b/web/src/test/java/se/inera/intyg/webcert/web/csintegration/certificate/IntegratedUnitNotificationEvaluatorTest.java @@ -75,7 +75,7 @@ void shallReturnFalseIfNotificationConfigDoesNotContainAnyMatchingUnitOrCareUnit } @Test - void shallReturnFalseIfDateInConfigurationIsAfterActivationDate() { + void shallReturnTrueIfDateOfIssuingUnitIsBeforeConfigurationDateTime() { final var regionNotificationConfig = RegionNotificationConfig.builder() .region(REGION) .configuration( @@ -91,11 +91,11 @@ void shallReturnFalseIfDateInConfigurationIsAfterActivationDate() { doReturn(List.of(regionNotificationConfig)).when(getUnitNotificationConfig).get(); final var result = integratedUnitNotificationEvaluator.mailNotification(CARE_PROVIDER_ID, ISSUED_ON_UNIT_ID, CERTIFICATE_ID, ISSUING_DATE); - assertFalse(result); + assertTrue(result); } @Test - void shallReturnTrueIfDateInConfigurationIsBeforeActivationDateAndCareProviderMatch() { + void shallReturnFalseIfDateOfIssuingUnitIsBeforeConfigurationDateTimeButDoesNotMatchAnyUnitId() { final var regionNotificationConfig = RegionNotificationConfig.builder() .region(REGION) .configuration( @@ -111,27 +111,7 @@ void shallReturnTrueIfDateInConfigurationIsBeforeActivationDateAndCareProviderMa doReturn(List.of(regionNotificationConfig)).when(getUnitNotificationConfig).get(); final var result = integratedUnitNotificationEvaluator.mailNotification(CARE_PROVIDER_ID, ISSUED_ON_UNIT_ID, CERTIFICATE_ID, ISSUING_DATE); - assertTrue(result); - } - - @Test - void shallReturnTrueIfDateInConfigurationIsBeforeActivationDateAndUnitIdMatch() { - final var regionNotificationConfig = RegionNotificationConfig.builder() - .region(REGION) - .configuration( - List.of( - IntegratedUnitNotificationConfig.builder() - .careProviders(List.of(NOT_MATCHING_ID)) - .issuedOnUnit(List.of(ISSUED_ON_UNIT_ID)) - .datetime(LocalDateTime.now().minusDays(1)) - .build() - )) - .build(); - - doReturn(List.of(regionNotificationConfig)).when(getUnitNotificationConfig).get(); - final var result = integratedUnitNotificationEvaluator.mailNotification(CARE_PROVIDER_ID, ISSUED_ON_UNIT_ID, CERTIFICATE_ID, - ISSUING_DATE); - assertTrue(result); + assertFalse(result); } @Nested @@ -145,7 +125,7 @@ void shallHandleMatchingValuesWithNullValuesForCareProviderIds() { List.of( IntegratedUnitNotificationConfig.builder() .issuedOnUnit(List.of(ISSUED_ON_UNIT_ID)) - .datetime(LocalDateTime.now().minusDays(1)) + .datetime(LocalDateTime.now().plusDays(1)) .build() )) .build(); @@ -157,14 +137,14 @@ void shallHandleMatchingValuesWithNullValuesForCareProviderIds() { } @Test - void shallHandleMatchingValuesWithNullValuesForUnitIds() { + void shallHandleMatchingValuesWithNullValuesForIssuedOnUnitId() { final var regionNotificationConfig = RegionNotificationConfig.builder() .region(REGION) .configuration( List.of( IntegratedUnitNotificationConfig.builder() - .careProviders(List.of(NOT_MATCHING_ID)) - .datetime(LocalDateTime.now().minusDays(1)) + .careProviders(List.of(CARE_PROVIDER_ID)) + .datetime(LocalDateTime.now().plusDays(1)) .build() )) .build(); @@ -175,5 +155,4 @@ void shallHandleMatchingValuesWithNullValuesForUnitIds() { assertTrue(result); } } - }