2525import static java .nio .charset .StandardCharsets .UTF_8 ;
2626import static java .util .stream .Collectors .toList ;
2727
28- import org .testingisdocumenting .webtau .console .ConsoleOutputs ;
29- import org .testingisdocumenting .webtau .console .ansi .Color ;
3028import org .testingisdocumenting .webtau .data .traceable .CheckLevel ;
3129import org .testingisdocumenting .webtau .data .traceable .TraceableValue ;
3230import org .testingisdocumenting .webtau .expectation .ActualPath ;
4442import org .testingisdocumenting .webtau .http .multipart .MultiPartFile ;
4543import org .testingisdocumenting .webtau .http .multipart .MultiPartFormData ;
4644import org .testingisdocumenting .webtau .http .multipart .MultiPartFormField ;
47- import org .testingisdocumenting .webtau .http .render .DataNodeAnsiPrinter ;
4845import org .testingisdocumenting .webtau .http .request .EmptyRequestBody ;
4946import org .testingisdocumenting .webtau .http .request .HttpApplicationMime ;
5047import org .testingisdocumenting .webtau .http .request .HttpQueryParams ;
5148import org .testingisdocumenting .webtau .http .request .HttpRequestBody ;
5249import org .testingisdocumenting .webtau .http .request .HttpTextMime ;
5350import org .testingisdocumenting .webtau .http .text .TextRequestBody ;
54- import org .testingisdocumenting .webtau .http .validation .HeaderDataNode ;
55- import org .testingisdocumenting .webtau .http .validation .HttpResponseValidator ;
56- import org .testingisdocumenting .webtau .http .validation .HttpResponseValidatorIgnoringReturn ;
57- import org .testingisdocumenting .webtau .http .validation .HttpResponseValidatorWithReturn ;
58- import org .testingisdocumenting .webtau .http .validation .HttpValidationHandlers ;
59- import org .testingisdocumenting .webtau .http .validation .HttpValidationResult ;
51+ import org .testingisdocumenting .webtau .http .validation .*;
6052import org .testingisdocumenting .webtau .persona .Persona ;
6153import org .testingisdocumenting .webtau .reporter .StepReportOptions ;
6254import org .testingisdocumenting .webtau .reporter .WebTauStep ;
@@ -904,7 +896,9 @@ private <R> R executeAndValidateHttpCall(String requestMethod,
904896 requestMethod , url , fullUrl , fullHeader , requestBody );
905897
906898 WebTauStep step = createHttpStep (validationResult , httpCall , validator );
899+ step .setInput (new HttpStepInput (validationResult ));
907900 step .setOutput (validationResult );
901+
908902 try {
909903 return step .execute (StepReportOptions .REPORT_ALL );
910904 } finally {
@@ -926,8 +920,6 @@ private <R> WebTauStep createHttpStep(HttpValidationResult validationResult,
926920 validationResult .getUrl (), validationResult .getFullUrl (),
927921 validationResult .getRequestHeader (), validationResult .getRequestBody ());
928922
929- renderRequest (validationResult .getRequestBody ());
930-
931923 response = httpCall .execute (validationResult .getFullUrl (),
932924 validationResult .getRequestHeader ());
933925
@@ -1095,47 +1087,18 @@ private void validateErrorsOnlyStatusCode(HttpValidationResult validationResult)
10951087
10961088 private Integer defaultExpectedStatusCodeByRequest (HttpValidationResult validationResult ) {
10971089 switch (validationResult .getRequestMethod ()) {
1098- case "GET" :
1099- return 200 ;
11001090 case "POST" :
11011091 return 201 ;
11021092 case "PUT" :
11031093 case "DELETE" :
11041094 case "PATCH" :
11051095 return validationResult .hasResponseContent () ? 200 : 204 ;
1096+ case "GET" :
11061097 default :
11071098 return 200 ;
11081099 }
11091100 }
11101101
1111- private void renderRequest (HttpRequestBody requestBody ) {
1112- if (skipRenderRequestResponse () || requestBody == null ) {
1113- return ;
1114- }
1115-
1116- if (requestBody .isEmpty ()) {
1117- ConsoleOutputs .out (Color .YELLOW , "[no request body]" );
1118- } else if (requestBody .isBinary ()) {
1119- ConsoleOutputs .out (Color .YELLOW , "[binary request]" );
1120- } else {
1121- ConsoleOutputs .out (Color .YELLOW , "request" , Color .CYAN , " (" , requestBody .type (), "):" );
1122- renderRequestBody (requestBody );
1123- }
1124- }
1125-
1126- private void renderRequestBody (HttpRequestBody requestBody ) {
1127- if (requestBody instanceof JsonRequestBody ) {
1128- DataNode dataNode = DataNodeBuilder .fromValue (new DataNodeId ("request" ), ((JsonRequestBody ) requestBody ).getOriginal ());
1129- new DataNodeAnsiPrinter (ConsoleOutputs .asCombinedConsoleOutput ()).print (dataNode , getCfg ().getConsolePayloadOutputLimit ());
1130- } else {
1131- ConsoleOutputs .out (requestBody .asString ());
1132- }
1133- }
1134-
1135- private boolean skipRenderRequestResponse () {
1136- return getCfg ().getVerbosityLevel () <= WebTauStep .getCurrentStep ().getNumberOfParents () + 1 ;
1137- }
1138-
11391102 private HttpResponse request (String method , String fullUrl ,
11401103 HttpHeader requestHeader ,
11411104 HttpRequestBody requestBody ) {
0 commit comments