diff --git a/apps/onboarding-functions/src/test/java/it/pagopa/selfcare/onboarding/functions/NotificationFunctionsTest.java b/apps/onboarding-functions/src/test/java/it/pagopa/selfcare/onboarding/functions/NotificationFunctionsTest.java index c62ee2076..d47278020 100644 --- a/apps/onboarding-functions/src/test/java/it/pagopa/selfcare/onboarding/functions/NotificationFunctionsTest.java +++ b/apps/onboarding-functions/src/test/java/it/pagopa/selfcare/onboarding/functions/NotificationFunctionsTest.java @@ -379,5 +379,23 @@ void resendNotificationsActivity_failsParsingFilters() { Mockito.verifyNoInteractions(notificationEventResenderService); } + + @Test + void resendNotificationsActivityException() throws JsonProcessingException { + ExecutionContext context = mock(ExecutionContext.class); + doReturn(Logger.getGlobal()).when(context).getLogger(); + String filtersString = "{\"productId\":\"prod-pagopa\", \"status\":[\"COMPLETED\"]}"; + + doThrow(new NotificationException("Error")).when(notificationEventService).send(any(), any(), any(), any()); + when(notificationEventResenderService.resendNotifications(any(), any())).thenReturn(null); + + String nextFilter = function.resendNotificationsActivity(filtersString, context); + + ArgumentCaptor filtersStringCaptor = ArgumentCaptor.forClass(ResendNotificationsFilters.class); + Mockito.verify(notificationEventResenderService, times(1)) + .resendNotifications(filtersStringCaptor.capture(), any()); + assertEquals("prod-pagopa", filtersStringCaptor.getValue().getProductId()); + assertNull(nextFilter); + } }