Witam
Mam Controller gdzie dodaję do bazy zadanie i przekierowuję na stronę gdzie je wyświetlam:
return "redirect:/task/" + task.getId();
I teraz robię testy za pomocą MockMvc i chcę sprawdzić czy przy poprawnych danych przekieruje na odpowiedni adres
@Test
public void postAddTaskWithValidData() throws Exception {
mockMvc.perform(post("/task/add).with(csrf())
.contentType(MediaType.APPLICATION_FORM_URLENCODED)
.param("topic", "Task Topic")
.param("content", "Test content")
.sessionAttr("taskForm" , new Task()))
.andExpect(model().attributeErrorCount("taskForm", 0))
.andExpect(view().name("redirect:/task/{id}"));
}
jak mam pobrać id dodanego taska do bazy i dodać go w ostatniej linijce w andExpect(view().name("redirect:/task/{id}"));
Chyba, że nie ma takiej możliwości to jak zapisać view().name żeby się zgadzało? view().name("redirect:/task/*") też próbowałem
W tym przykładzie dostaję odp: java.lang.AssertionError: View name expected:redirect:/task/{id} but was:redirect:/task/19