diff --git a/src/test/java/org/springframework/samples/petclinic/rest/OwnerRestControllerTests.java b/src/test/java/org/springframework/samples/petclinic/rest/OwnerRestControllerTests.java index d3ac7dbcc066f9ae22c12b99c28babf970018152..d52242742c3afa1cbbb51e92d5f7103cdabb4203 100644 --- a/src/test/java/org/springframework/samples/petclinic/rest/OwnerRestControllerTests.java +++ b/src/test/java/org/springframework/samples/petclinic/rest/OwnerRestControllerTests.java @@ -32,8 +32,11 @@ import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.http.MediaType; import org.springframework.samples.petclinic.model.Owner; +import org.springframework.samples.petclinic.service.ApplicationTestConfig; import org.springframework.samples.petclinic.service.ClinicService; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -49,15 +52,16 @@ import com.fasterxml.jackson.databind.ObjectMapper; * * @author Vitaliy Fedoriv */ +@SpringBootTest @RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration({"classpath:spring/mvc-test-config.xml"}) +@ContextConfiguration(classes=ApplicationTestConfig.class) @WebAppConfiguration public class OwnerRestControllerTests { @Autowired private OwnerRestController ownerRestController; - @Autowired + @MockBean private ClinicService clinicService; private MockMvc mockMvc; @@ -202,6 +206,7 @@ public class OwnerRestControllerTests { @Test public void testUpdateOwnerSuccess() throws Exception { + given(this.clinicService.findOwnerById(1)).willReturn(owners.get(0)); Owner newOwner = owners.get(0); newOwner.setFirstName("George I"); ObjectMapper mapper = new ObjectMapper(); diff --git a/src/test/java/org/springframework/samples/petclinic/rest/PetRestControllerTests.java b/src/test/java/org/springframework/samples/petclinic/rest/PetRestControllerTests.java index 9a637013ab2958e59078a2ab78e32105e31260e6..178d7178db6f77e49fe52c14e81873a833d38d50 100644 --- a/src/test/java/org/springframework/samples/petclinic/rest/PetRestControllerTests.java +++ b/src/test/java/org/springframework/samples/petclinic/rest/PetRestControllerTests.java @@ -33,10 +33,13 @@ import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.http.MediaType; import org.springframework.samples.petclinic.model.Owner; import org.springframework.samples.petclinic.model.Pet; import org.springframework.samples.petclinic.model.PetType; +import org.springframework.samples.petclinic.service.ApplicationTestConfig; import org.springframework.samples.petclinic.service.ClinicService; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -52,16 +55,18 @@ import com.fasterxml.jackson.databind.ObjectMapper; * * @author Vitaliy Fedoriv */ + +@SpringBootTest @RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration({"classpath:spring/mvc-test-config.xml"}) +@ContextConfiguration(classes=ApplicationTestConfig.class) @WebAppConfiguration public class PetRestControllerTests { @Autowired private PetRestController petRestController; - @Autowired - private ClinicService clinicService; + @MockBean + protected ClinicService clinicService; private MockMvc mockMvc; diff --git a/src/test/java/org/springframework/samples/petclinic/rest/PetTypeRestControllerTests.java b/src/test/java/org/springframework/samples/petclinic/rest/PetTypeRestControllerTests.java index 8bb2da3197c30700c03b06fe5944755ae630402e..4b11bf3330627d97702bb8626251cdac3b498e96 100644 --- a/src/test/java/org/springframework/samples/petclinic/rest/PetTypeRestControllerTests.java +++ b/src/test/java/org/springframework/samples/petclinic/rest/PetTypeRestControllerTests.java @@ -32,8 +32,11 @@ import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.http.MediaType; import org.springframework.samples.petclinic.model.PetType; +import org.springframework.samples.petclinic.service.ApplicationTestConfig; import org.springframework.samples.petclinic.service.ClinicService; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -49,15 +52,16 @@ import com.fasterxml.jackson.databind.ObjectMapper; * * @author Vitaliy Fedoriv */ +@SpringBootTest @RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration({"classpath:spring/mvc-test-config.xml"}) +@ContextConfiguration(classes=ApplicationTestConfig.class) @WebAppConfiguration public class PetTypeRestControllerTests { @Autowired private PetTypeRestController petTypeRestController; - @Autowired + @MockBean private ClinicService clinicService; private MockMvc mockMvc; diff --git a/src/test/java/org/springframework/samples/petclinic/rest/SpecialtyRestControllerTests.java b/src/test/java/org/springframework/samples/petclinic/rest/SpecialtyRestControllerTests.java index f82dcc9688bd486fc403250ad89e3a175d21607a..4b0c527225cc14b189494a9c276f80f1f8b2fe45 100644 --- a/src/test/java/org/springframework/samples/petclinic/rest/SpecialtyRestControllerTests.java +++ b/src/test/java/org/springframework/samples/petclinic/rest/SpecialtyRestControllerTests.java @@ -32,8 +32,11 @@ import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.http.MediaType; import org.springframework.samples.petclinic.model.Specialty; +import org.springframework.samples.petclinic.service.ApplicationTestConfig; import org.springframework.samples.petclinic.service.ClinicService; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -48,15 +51,16 @@ import com.fasterxml.jackson.databind.ObjectMapper; * * @author Vitaliy Fedoriv */ +@SpringBootTest @RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration({"classpath:spring/mvc-test-config.xml"}) +@ContextConfiguration(classes=ApplicationTestConfig.class) @WebAppConfiguration public class SpecialtyRestControllerTests { @Autowired private SpecialtyRestController specialtyRestController; - @Autowired + @MockBean private ClinicService clinicService; private MockMvc mockMvc; diff --git a/src/test/java/org/springframework/samples/petclinic/rest/VetRestControllerTests.java b/src/test/java/org/springframework/samples/petclinic/rest/VetRestControllerTests.java index 528b4c423eb58d7b09ae57cf44525b04c18a8710..a1adbea6bb513a7425ec45c55db7d5fe2e42aced 100644 --- a/src/test/java/org/springframework/samples/petclinic/rest/VetRestControllerTests.java +++ b/src/test/java/org/springframework/samples/petclinic/rest/VetRestControllerTests.java @@ -32,8 +32,11 @@ import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.http.MediaType; import org.springframework.samples.petclinic.model.Vet; +import org.springframework.samples.petclinic.service.ApplicationTestConfig; import org.springframework.samples.petclinic.service.ClinicService; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -48,16 +51,16 @@ import com.fasterxml.jackson.databind.ObjectMapper; * * @author Vitaliy Fedoriv */ - +@SpringBootTest @RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration({"classpath:spring/mvc-test-config.xml"}) +@ContextConfiguration(classes=ApplicationTestConfig.class) @WebAppConfiguration public class VetRestControllerTests { @Autowired private VetRestController vetRestController; - @Autowired + @MockBean private ClinicService clinicService; private MockMvc mockMvc; @@ -157,6 +160,7 @@ public class VetRestControllerTests { @Test public void testUpdateVetSuccess() throws Exception { + given(this.clinicService.findVetById(1)).willReturn(vets.get(0)); Vet newVet = vets.get(0); newVet.setFirstName("James"); ObjectMapper mapper = new ObjectMapper(); diff --git a/src/test/java/org/springframework/samples/petclinic/rest/VisitRestControllerTests.java b/src/test/java/org/springframework/samples/petclinic/rest/VisitRestControllerTests.java index 092fd99a21ec5c93ca1f4e6242959cc375f59e6c..5d4dc5eef2d2897e7ef37642b09f75c3146c5cb4 100644 --- a/src/test/java/org/springframework/samples/petclinic/rest/VisitRestControllerTests.java +++ b/src/test/java/org/springframework/samples/petclinic/rest/VisitRestControllerTests.java @@ -34,11 +34,14 @@ import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.http.MediaType; import org.springframework.samples.petclinic.model.Owner; import org.springframework.samples.petclinic.model.Pet; import org.springframework.samples.petclinic.model.PetType; import org.springframework.samples.petclinic.model.Visit; +import org.springframework.samples.petclinic.service.ApplicationTestConfig; import org.springframework.samples.petclinic.service.ClinicService; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -53,16 +56,16 @@ import com.fasterxml.jackson.databind.ObjectMapper; * * @author Vitaliy Fedoriv */ - +@SpringBootTest @RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration({"classpath:spring/mvc-test-config.xml"}) +@ContextConfiguration(classes=ApplicationTestConfig.class) @WebAppConfiguration public class VisitRestControllerTests { @Autowired private VisitRestController visitRestController; - @Autowired + @MockBean private ClinicService clinicService; private MockMvc mockMvc; diff --git a/src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java b/src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java index f989ea2025efc1e53b38eb214a36455cd187d15c..d2625ad9c41bb83ded13a94643ebf2db725e00fc 100644 --- a/src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java +++ b/src/test/java/org/springframework/samples/petclinic/service/AbstractClinicServiceTests.java @@ -20,7 +20,9 @@ import static org.assertj.core.api.Assertions.assertThat; import java.util.Collection; import java.util.Date; +import org.junit.Before; import org.junit.Test; +import org.mockito.MockitoAnnotations; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.samples.petclinic.model.Owner; import org.springframework.samples.petclinic.model.Pet; @@ -56,6 +58,11 @@ public abstract class AbstractClinicServiceTests { @Autowired protected ClinicService clinicService; + + @Before + public void init() { + MockitoAnnotations.initMocks(this); + } @Test public void shouldFindOwnersByLastName() { diff --git a/src/test/java/org/springframework/samples/petclinic/service/ApplicationTestConfig.java b/src/test/java/org/springframework/samples/petclinic/service/ApplicationTestConfig.java new file mode 100644 index 0000000000000000000000000000000000000000..ac3898b3447f849ffa77f444cf215ce75c2c31e1 --- /dev/null +++ b/src/test/java/org/springframework/samples/petclinic/service/ApplicationTestConfig.java @@ -0,0 +1,13 @@ +package org.springframework.samples.petclinic.service; + +import org.mockito.MockitoAnnotations; +import org.springframework.boot.test.context.TestConfiguration; + +@TestConfiguration +public class ApplicationTestConfig { + + public ApplicationTestConfig(){ + MockitoAnnotations.initMocks(this); + } + +} diff --git a/src/test/resources/spring/mvc-test-config.xml b/src/test/resources/spring/mvc-test-config.xml deleted file mode 100644 index 926851ece60234320226dca80ba58128d05765b2..0000000000000000000000000000000000000000 --- a/src/test/resources/spring/mvc-test-config.xml +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:p="http://www.springframework.org/schema/p" - xmlns:context="http://www.springframework.org/schema/context" - xmlns:mvc="http://www.springframework.org/schema/mvc" - xmlns="http://www.springframework.org/schema/beans" - xsi:schemaLocation="http://www.springframework.org/schema/mvc - http://www.springframework.org/schema/mvc/spring-mvc.xsd - http://www.springframework.org/schema/beans - http://www.springframework.org/schema/beans/spring-beans.xsd - http://www.springframework.org/schema/context - http://www.springframework.org/schema/context/spring-context.xsd"> - - <context:component-scan - base-package="org.springframework.samples.petclinic.rest"/> - - <bean id="ClinicService" class="org.mockito.Mockito" factory-method="mock"> - <constructor-arg value="org.springframework.samples.petclinic.service.ClinicService"/> - </bean> - -</beans>