Я пытаюсь запустить тесты на моем контроллере, когда я пытаюсь выполнить тест findbyid, я продолжаю получать 404, и я не уверен почему.
Это метод с моего контроллера
@CrossOrigin
@GetMapping(path="/movie/{id}")
public @ResponseBody Movies getMovie(@PathVariable Integer id){
return moviesRepository.findById(id)
.orElseThrow(() -> new ResponseStatusException(
HttpStatus.NOT_FOUND, "Movie not found"
) );
}
И это тест.
@Test
void getSingleMovie() throws Exception{
Movies movies = new Movies(1, "Star Wars", "A New Hope");
when(moviesController.getMovie(1)).thenReturn(movies);
MvcResult mvcResult = mockMvc.perform(
MockMvcRequestBuilders.get("/movies/1")
.accept(MediaType.APPLICATION_JSON)
).andReturn();
Mockito.verify(moviesRepository).findAllById(Collections.singleton(1));
В выводе моей трассировки стека содержится следующее ...
MockHttpServletResponse:
Status = 404
Error message = Movies not found
Headers = [Vary:"Origin", "Access-Control-Request-Method", "Access-Control-Request-Headers"]
Content type = null
Body =
Forwarded URL = null
Redirected URL = null
Cookies = []
java.lang.AssertionError: Response header 'Access-Control-Allow-Origin' expected:<*> but was:<null>
Expected :*
Actual :null