MockMvc

VetController
@Controllerpublic class VetController {    private final ClinicService clinicService;    @Autowired    public VetController(ClinicService clinicService) {        this.clinicService = clinicService;    }    @RequestMapping(value = { "/vets.html"})    public String showVetList(Map<String, Object> model) {        // Here we are returning an object of type 'Vets' rather than a collection of Vet objects        // so it is simpler for Object-Xml mapping        Vets vets = new Vets();        vets.getVetList().addAll(this.clinicService.findVets());        model.put("vets", vets);        return "vets/vetList";    }}
VetControllerTest
@ExtendWith(MockitoExtension.class)class VetControllerTest {    @Mock    ClinicService clinicService;    @Mock    Map<String, Object> model;    @InjectMocks    VetController controller;    List<Vet> vetsList = new ArrayList<>();    MockMvc mockMvc;    @BeforeEach    void setUp() {        vetsList.add(new Vet());        given(clinicService.findVets()).willReturn(vetsList);        mockMvc = MockMvcBuilders.standaloneSetup(controller).build();    }    @Test    void testControllerShowVetList() throws Exception {        mockMvc.perform(get("/vets.html"))            .andExpect(status().isOk())            .andExpect(model().attributeExists("vets"))            .andExpect(view().name("vets/vetList"));    }}