Ich versuche, meinen Integrationstest einzuchecken, wenn alle Werte von einer bestimmten Eigenschaft den gleichen Typ haben. Ich versuchte es mit jsonPath und JsonPathResultMatchers, aber ohne Erfolg. Schließlich habe ich in etwa so:Wie können Sie alle JSON-Eigenschaftenwerte am besten prüfen?
MvcResult result = mockMvc.perform(get("/weather/" + existingCity))
.andExpect(MockMvcResultMatchers.status().isOk())
.andReturn();
String responseContent = result.getResponse().getContentAsString();
TypeRef<List<Object>> typeRef = new TypeRef<List<Object>>() {
};
List<Object> humidities = JsonPath.using(configuration).parse(responseContent).read("$.*.humidity", typeRef);
Assertions.assertThat(humidities.stream().allMatch(humidity -> humidity instanceof Integer)).isTrue();
Aber ich frage mich, ob etwas klarer Weise existieren, dies zu tun, kann das gleiche Ergebnis mit JSONPath erreicht werden? Oder AssertJ hat eine Methode, um es ohne Verwendung Stream-Code zu finden