Class WireMockRequests

java.lang.Object
org.approvej.http.wiremock.WireMockRequests

@NullMarked public final class WireMockRequests extends Object
Utility class for converting WireMock's Request to ApproveJ's ReceivedHttpRequest.

The Request interface is implemented by LoggedRequest, which is returned by ServeEvent.getRequest().

Example usage:


 import static org.approvej.http.wiremock.WireMockRequests.toReceivedHttpRequest;
 import static org.approvej.ApprovalBuilder.approve;

 // Convert a single request
 Request request = wireMockServer.getAllServeEvents().getFirst().getRequest();
 approve(toReceivedHttpRequest(request)).byFile();

 // Convert multiple requests
 wireMockServer.getAllServeEvents().stream()
     .map(event -> toReceivedHttpRequest(event.getRequest()))
     .forEach(request -> approve(request).byFile());
 

Note on ordering: WireMock's getAllServeEvents() returns events in reverse chronological order (most recent first). If you need chronological order, reverse the list.

  • Method Details

    • toReceivedHttpRequest

      public static org.approvej.http.ReceivedHttpRequest toReceivedHttpRequest(com.github.tomakehurst.wiremock.http.Request request)
      Converts a WireMock Request to an ApproveJ ReceivedHttpRequest.

      The conversion maps:

      • Request.getMethod() to ReceivedHttpRequest.method()
      • Request.getUrl() to ReceivedHttpRequest.uri()
      • Request.getHeaders() to ReceivedHttpRequest.headers()
      • Request.getBodyAsString() to ReceivedHttpRequest.body()
      Parameters:
      request - the WireMock Request to convert (e.g., LoggedRequest)
      Returns:
      a new ReceivedHttpRequest with the converted data