Я создал приложение весенней загрузки, и вот как выглядит мой контроллер. Я использую почтальона для отправки json в теле запроса и строки в заголовке запроса, затем дополнительно хеширую json и сравниваю его со строкой, полученной заголовком запроса. Проблема в том, что я не знаю, как получить тело запроса и заголовок запроса, чтобы протестировать соответствующий класс контроллера с помощью MockMvc.
Логика контроллера
@RestController
public class Comparison {
@PostMapping(path = "/test")
public boolean compareHash(@RequestBody String json,
@RequestHeader(value = "code") String oldHashValue) {
Hash hashObj = new Hash();
String newHashValue = hashObj.sha512(json);
return oldHashValue.equals(newHashValue);
}
}
Логика тестирования
public class ComparisionTest {
@Autowired
private WebApplicationContext wac;
private MockMvc mockMvc;
@Before
public void setup () {
DefaultMockMvcBuilder builder = MockMvcBuilders.webAppContextSetup(this.wac);
this.mockMvc = builder.build();
}
@Test
public void contextLoads() throws Exception {
RecordedRequest recordedRequest = server.takeRequest();
}
}
Пожалуйста, помогите мне в приведенном выше коде, чтобы получить значение тела и заголовка из запроса и приравнять хэш (тело) к значению заголовка.