From 3653bd4f11036a213de7b576604beee5882ad44c Mon Sep 17 00:00:00 2001 From: Joe Date: Wed, 17 Dec 2025 10:46:06 -0300 Subject: [PATCH] =?UTF-8?q?feat:=20implementado=20o=20teste=20do=20m=C3=A9?= =?UTF-8?q?todo=20"disableReminderNotifications"=20na=20classe=20ReminderS?= =?UTF-8?q?erviceTest,=20garantindo=20a=20cobertura=20total=20dos=20testes?= =?UTF-8?q?.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../reminder/service/ReminderServiceTest.java | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/src/test/java/br/com/springnoobs/reminderapi/reminder/service/ReminderServiceTest.java b/src/test/java/br/com/springnoobs/reminderapi/reminder/service/ReminderServiceTest.java index 5e3a96e..e36d036 100644 --- a/src/test/java/br/com/springnoobs/reminderapi/reminder/service/ReminderServiceTest.java +++ b/src/test/java/br/com/springnoobs/reminderapi/reminder/service/ReminderServiceTest.java @@ -296,4 +296,37 @@ void shouldRegisterCompleteExecutionWhenReminderIsValid() { assertNotNull(reminder.getExecutedAt()); verify(repository).save(reminder); } + + @Test + void shouldDisableReminderNotificationsWhenReminderIdIsValid() throws SchedulerException { + // Arrange + long reminderId = 1L; + Reminder reminder = new Reminder(); + reminder.setId(reminderId); + + when(repository.findById(reminderId)).thenReturn(Optional.of(reminder)); + doNothing().when(jobService).unscheduleReminderJobTriggers(reminderId); + + // Act + service.disableReminderNotifications(reminderId); + + // Assert + verify(repository).findById(reminderId); + verify(jobService).unscheduleReminderJobTriggers(reminderId); + verifyNoMoreInteractions(repository, jobService); + } + + @Test + void shouldThrowNotFoundExceptionWhenDisablingNotificationsForInvalidReminderId() { + // Arrange + long invalidReminderId = 99L; + when(repository.findById(invalidReminderId)).thenReturn(Optional.empty()); + + // Act & Assert + assertThrows(NotFoundException.class, () -> service.disableReminderNotifications(invalidReminderId)); + + // Verify + verify(repository).findById(invalidReminderId); + verifyNoInteractions(jobService); + } }