Help!
MockHttpServletResponse:
Status = 201
Error message = null
Headers = [Vary:"Origin", "Access-Control-Request-Method", "Access-Control-Request-Headers", Location:"http://localhost/medicos/0", Content-Type:"application/json", X-Content-Type-Options:"nosniff", X-XSS-Protection:"0", Cache-Control:"no-cache, no-store, max-age=0, must-revalidate", Pragma:"no-cache", Expires:"0", X-Frame-Options:"DENY"]
Content type = application/json
Body = {"id":0,"nome":"Medico","crm":"123456","especialidade":"CARDIOLOGIA","email":"medico@voll.med","telefone":"12344432121","endereco":{"logradouro":"rua xpto","numero":"123","bairro":"bairro","complemento":null,"cidade":"Brasilia","uf":"DF","cep":"00000000"}}
Forwarded URL = null
Redirected URL = http://localhost/medicos/0
Cookies = []
org.opentest4j.AssertionFailedError:
expected: "{"id":null,"nome":"Medico","crm":"123456","especialidade":"CARDIOLOGIA","email":"medico@voll.med","telefone":"12344432121","endereco":{"logradouro":"rua xpto","numero":"123","bairro":"bairro","complemento":null,"cidade":"Brasilia","uf":"DF","cep":"00000000"}}"
but was: "{"id":0,"nome":"Medico","crm":"123456","especialidade":"CARDIOLOGIA","email":"medico@voll.med","telefone":"12344432121","endereco":{"logradouro":"rua xpto","numero":"123","bairro":"bairro","complemento":null,"cidade":"Brasilia","uf":"DF","cep":"00000000"}}"
Expected :"{"id":null,"nome":"Medico","crm":"123456","especialidade":"CARDIOLOGIA","email":"medico@voll.med","telefone":"12344432121","endereco":{"logradouro":"rua xpto","numero":"123","bairro":"bairro","complemento":null,"cidade":"Brasilia","uf":"DF","cep":"0 ...
Actual :"{"id":0,"nome":"Medico","crm":"123456","especialidade":"CARDIOLOGIA","email":"medico@voll.med","telefone":"12344432121","endereco":{"logradouro":"rua xpto","numero":"123","bairro":"bairro","complemento":null,"cidade":"Brasilia","uf":"DF","cep":"0000 ...
@Test
@DisplayName("Devolver HTTP 200 para infos VÁLIDAS")
@WithMockUser
void cadastroMedicos_cenario2() throws Exception {
var dadosCadastro = new DadosCadastroMedico(
"Medico",
"123456",
Especialidade.CARDIOLOGIA,
"12344432121",
"medico@voll.med",
dadosEndereco());
when(repository.save(any())).thenReturn(new Medico(dadosCadastro));
var response = mvc.perform(post("/medicos")
.contentType(MediaType.APPLICATION_JSON)
.content(dadosCadastroMedicoJson.write(dadosCadastro).getJson()))
.andReturn().getResponse();
var detalhamentoMedico = new DetalhamentoMedico(
null,
dadosCadastro.nome(),
dadosCadastro.crm(),
dadosCadastro.especialidade(),
dadosCadastro.email(),
dadosCadastro.telefone(),
new Endereco(dadosCadastro.endereco()));
var jsonEsperado = dadosDetalhamentoMedicoJson.write(detalhamentoMedico).getJson();
assertThat(response.getStatus()).isEqualTo(HttpStatus.CREATED.value());
assertThat(response.getContentAsString()).isEqualTo(jsonEsperado);
}
private DadosEndereco dadosEndereco() {
return new DadosEndereco(
"rua xpto",
"123",
null,
"bairro",
"Brasilia",
"DF",
"00000000");
}
}