@RunWith(SpringRunner.class)
@SpringBootTest
@AutoConfigureMockMvc
public class ShopControllerTest {
@Autowired
private MockMvc mockMvc;
@MockBean
private UserService userService;
@Test
public void showRegistrationForm() throws Exception {
String uuid = UUID.randomUUID().toString();
when(userService.showRegistrationForm(uuid)).thenReturn(new UserRegistration());
this.mockMvc.perform(get("/user/registration/"+uuid))
.andExpect(status().isOk()).andExpect(view()
.name("registrationForm"))
.andExpect(model().attributeExists("data"))
.andExpect(model().attributeExists("reqDto"))
.andExpect(model().attributeExists(uuid));
}
}
Я написал этот модульный тест для проверки шаблона с тимьяном.Я не могу запустить это, потому что сгенерированный UUID не существует в базе данных.
Это контроллер:
@RequestMapping(value = "/registration/{uuid}")
public String showRegistrationForm(@PathVariable String uuid, Model model) {
try {
UserRegistration UserRegistration = this.userService.showRegistrationForm(uuid);
model.addAttribute("user", true);
model.addAttribute("uuid", uuid);
model.addAttribute("reqDto", new RequestDto());
} catch (UrlExpiredException e) {
System.out.println("UrlExpiredException");
model.addAttribute("exception", e.getMessage());
} catch (UrlNotFoundException e) {
System.out.println("UrlNotFoundException");
model.addAttribute("exception", e.getMessage());
}
return "registrationForm";
}
это в pom.xml
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>1.9.5</version>
<scope>test</scope>
</dependency>
Чего мне не хватает?