Ao fazer o teste do método POST, está retornando o erro 500, ao invés de retornar o código 201, como esperado. Segue o código que estou fazendo o teste e a stacktrace:
@Test
@DisplayName("Deveria devolver código http 201, quando as informações estiverem válidas")
@WithMockUser
void createBeneficiaryCenario2() throws Exception {
DadosCadastroBeneficiario dadosCadastroBeneficiario = new DadosCadastroBeneficiario(
"Nome",
"1165459787",
LocalDate.parse("2002-03-12"),
LocalDate.parse("2023-10-25"),
LocalDate.parse("2023-10-25"),
dadosCadastroDocumento(),
dadosEndereco());
when(beneficiarioRepository.save(any())).thenReturn(new Beneficiario(dadosCadastroBeneficiario));
var response = mvc
.perform(
post("/beneficiaries")
.contentType(MediaType.APPLICATION_JSON)
.content(dadosCadastroBeneficiarioJson.write(dadosCadastroBeneficiario).getJson()
)
)
.andReturn().getResponse();
DadosDetalhamentoBeneficiario dadosDetalhamentoBeneficiario = new DadosDetalhamentoBeneficiario(
null,
dadosCadastroBeneficiario.nome(),
dadosCadastroBeneficiario.telefone(),
dadosCadastroBeneficiario.dataNascimento(),
dadosCadastroBeneficiario.dataInclusao(),
dadosCadastroBeneficiario.dataAtualizacao(),
null,
null);
assertThat(response.getStatus()).isEqualTo(HttpStatus.CREATED.value());
String jsonEsperado = dadosDetalhamentoBeneficiarioJson.write(dadosDetalhamentoBeneficiario).getJson();
assertThat(response.getContentAsString()).isEqualTo(jsonEsperado);
}