Eu acabei conseguindo fazer utilizando o MvcResult para recuperar o o response da requisição e em seguida eu fiz um find e dei um Assert para comparar os locations... funcionou legal.
@Test
@Transactional
@DisplayName("Deve criar uma proposta e retornar código 201 com URI criada no Header")
void criaPropostaTest() throws Exception{
Proposta proposta = new Proposta(
"Usuario",
"186.375.330-35",
"teste@teste.com.br",
new BigDecimal(1000),
"Rua do teste");
String json = new ObjectMapper().writeValueAsString(proposta);
MockHttpServletRequestBuilder builder = MockBuilder.run(URI_API, json);
MvcResult mvcResult = mvc.perform(builder).andExpect(status().isCreated()).andReturn();
Proposta propostaConsultada = (Proposta) manager.createQuery(
"select p from Proposta p where p.documento = '186.375.330-35'")
.getSingleResult();
String locationResponse = "http://localhost"+URI_API+"/"+propostaConsultada.getId();
String location = mvcResult.getResponse().getHeader("Location");
Assertions.assertNotNull(location);
Assertions.assertEquals(location, locationResponse);
}