diff --git a/src/test/java/org/springframework/samples/petclinic/owner/OwnerControllerTest.java b/src/test/java/org/springframework/samples/petclinic/owner/OwnerControllerTest.java index b549a606f..264edbad4 100644 --- a/src/test/java/org/springframework/samples/petclinic/owner/OwnerControllerTest.java +++ b/src/test/java/org/springframework/samples/petclinic/owner/OwnerControllerTest.java @@ -23,6 +23,7 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Page; import java.util.ArrayList; +import org.springframework.data.domain.PageImpl; import java.util.List; import org.junit.jupiter.api.Test; @@ -165,4 +166,25 @@ class OwnerControllerTest { verify(result).rejectValue("lastName", "notFound", "not found"); } + @Test + @DisplayName("Test processFindForm with multiple results") + void testProcessFindFormWithMultipleResults() { + Owner owner = new Owner(); + owner.setLastName("Doe"); + + List owners = new ArrayList<>(); + owners.add(new Owner()); + owners.add(new Owner()); + Page page = new PageImpl<>(owners); + + doReturn(page).when(ownerRepository).findByLastName("Doe", PageRequest.of(0, 5)); + + Model model = new ConcurrentModel(); + String view = ownerController.processFindForm(1, owner, result, model); + + assertThat(view).isEqualTo("owners/ownersList"); + assertThat(model.asMap().get("listOwners")).isNotNull(); + verify(ownerRepository).findByLastName("Doe", PageRequest.of(0, 5)); + } + }