diff --git a/web/src/main/java/se/inera/intyg/webcert/web/csintegration/certificate/GetUnitNotificationConfig.java b/web/src/main/java/se/inera/intyg/webcert/web/csintegration/certificate/GetUnitNotificationConfig.java index c4eef23903..adf97a2adc 100644 --- a/web/src/main/java/se/inera/intyg/webcert/web/csintegration/certificate/GetUnitNotificationConfig.java +++ b/web/src/main/java/se/inera/intyg/webcert/web/csintegration/certificate/GetUnitNotificationConfig.java @@ -23,6 +23,7 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; import java.io.FileInputStream; +import java.io.FileNotFoundException; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -52,8 +53,11 @@ public List get() { new TypeReference<>() { }); log.info("Integrated Unit Notification was loaded with configuration: {}", integratedUnitNotificationConfig); + } catch (FileNotFoundException e) { + log.warn("File not found: {}. Returning empty configuration.", unitNotificationConfigPath); + return Collections.emptyList(); } catch (Exception e) { - log.info("No Integrated Unit Notification was loaded, returning empty configuration map. Reason: {}", e.getMessage()); + log.error("Failed to load Integrated Unit Notification configuration. Reason: {}", e.getMessage(), e); return Collections.emptyList(); } } diff --git a/web/src/test/java/se/inera/intyg/webcert/web/csintegration/certificate/GetUnitNotificationConfigTest.java b/web/src/test/java/se/inera/intyg/webcert/web/csintegration/certificate/GetUnitNotificationConfigTest.java index 02e759d77c..d5ece2843f 100644 --- a/web/src/test/java/se/inera/intyg/webcert/web/csintegration/certificate/GetUnitNotificationConfigTest.java +++ b/web/src/test/java/se/inera/intyg/webcert/web/csintegration/certificate/GetUnitNotificationConfigTest.java @@ -45,7 +45,6 @@ class GetUnitNotificationConfigTest { @InjectMocks private GetUnitNotificationConfig getUnitNotificationConfig; - @Test void shallReturnEmptyListIfPathIsInvalid() { ReflectionTestUtils.setField(getUnitNotificationConfig, "unitNotificationConfigPath", INVALID_PATH); @@ -53,6 +52,13 @@ void shallReturnEmptyListIfPathIsInvalid() { assertTrue(result.isEmpty()); } + @Test + void shallReturnEmptyListIfPathIsMissing() { + ReflectionTestUtils.setField(getUnitNotificationConfig, "unitNotificationConfigPath", null); + final var result = getUnitNotificationConfig.get(); + assertTrue(result.isEmpty()); + } + @Test void shallReturnListOfIntegratedUnitNotificationConfig() { final var expectedRegionNotificationConfig = RegionNotificationConfig.builder()