public class GetChartDetailRequestBuilder {
private GetChartDetailRequestBuilder() {}
public static GetChartDetailRequest defaultRequest() {
return GetChartDetailRequest.builder()
.period("1m")
.classifier("7001003100200")
.type("system")
.compareModePeriod(false)
.comparePeriodOffset("P7D")
.build();
}
}
"Cannot resolve method 'builder' in 'GetChartDetailRequest'"
public void testBody(RestService restService) {
GetChartDetailRequest request =
GetChartDetailRequestBuilder.defaultRequest();
GetChartDetailResponse response = restService.restClient()
.post(
spec -> spec.body(request),
GET_CHART_DETAILS
)
.should(haveStatusCode(200))
.toValidatableJson(GetChartDetailResponse.class);
assertEquals(0, response.getStatus().getCode());
assertEquals("success", response.getStatus().getText());
}
"toValidatableJson - Expected no arguments but found 1" "Cannot resolve method 'getStatus' in 'GetChartDetailResponse'"
При отправке запроса возвращается объект типа ValidatableResponseWrapper из которого доступен вызов .should().
Для ValidatableResponseWrapper выполняются проверки RestMatchers(валидация всего ответа целиком, тело, куки, статус код и т.д.).
Если необходимо валидировать только тело, требуется привести его к нужному формату(XML или Json) при помощи вызова .toValidatableJson() или .toValidatableXml(). Далее также вызвать .should() внутри которого будут доступны мэтчеры для Json или XML. " .should(
// здесь доступен вызов RestMatchers
haveStatusCode(200),
haveBodyJsonValueEqualTo("status.code", "51"),
notHaveEmptyBody()
);"