Files
getting-started/spring-cloud/spring-cloud-contract-provider/src/test/java/io/reflectoring/UserServiceBase.java
2020-07-26 07:12:40 +10:00

40 lines
1.2 KiB
Java

package io.reflectoring;
import io.restassured.module.mockmvc.RestAssuredMockMvc;
import org.junit.Before;
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.test.context.junit4.SpringRunner;
import org.springframework.web.context.WebApplicationContext;
import java.util.Optional;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.any;
import static org.mockito.Mockito.when;
@RunWith(SpringRunner.class)
@SpringBootTest(classes = DemoApplication.class)
public abstract class UserServiceBase {
@Autowired
WebApplicationContext webApplicationContext;
@MockBean
private UserRepository userRepository;
@Before
public void setup() {
User savedUser = new User();
savedUser.setFirstName("Arthur");
savedUser.setLastName("Dent");
savedUser.setId(42L);
when(userRepository.save(any(User.class))).thenReturn(savedUser);
RestAssuredMockMvc.webAppContextSetup(webApplicationContext);
when(userRepository.findById(eq(42L))).thenReturn(Optional.of(savedUser));
}
}