Class ClientTestingAdapter

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.Map<java.lang.String,​java.lang.Object> execute​(java.lang.String defaultURI, java.util.Map<java.lang.String,​java.lang.Object> request, TestingFrameworkRequestHandler requestHandler, java.util.Map<java.lang.String,​java.lang.Object> responseExpectations)
      See the documentation for the same method in ClientPOJOAdapter.
      ClientPOJOAdapter getClientPOJOAdapter()
      Getter for the ClientPOJOAdapter that is actually used to make the HTTP request.
      boolean isRequestSupported​(java.util.Map<java.lang.String,​java.lang.Object> request)
      See the documentation for the same method in ClientPOJOAdapter.
      java.util.Map<java.lang.String,​java.lang.Object> modifyRequest​(java.util.Map<java.lang.String,​java.lang.Object> request)
      See the documentation for the same method in ClientPOJOAdapter.
      java.util.Map<java.lang.String,​java.lang.Object> modifyResponseExpectations​(java.util.Map<java.lang.String,​java.lang.Object> request, java.util.Map<java.lang.String,​java.lang.Object> responseExpectations)
      Generally a test's response expectations should not need to be modified, but if a particular HTTP client (such as Groovy's RESTClient which uses HttpClient) needs to modify the response expectations, it should do so here.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • adapter

        protected ClientPOJOAdapter adapter
        This adapter will perform the HTTP request and return the response in the expected format.
      • callAssertNothingThrown

        protected boolean callAssertNothingThrown
    • Constructor Detail

      • ClientTestingAdapter

        public ClientTestingAdapter()
    • Method Detail

      • execute

        public java.util.Map<java.lang.String,​java.lang.Object> execute​(java.lang.String defaultURI,
                                                                              java.util.Map<java.lang.String,​java.lang.Object> request,
                                                                              TestingFrameworkRequestHandler requestHandler,
                                                                              java.util.Map<java.lang.String,​java.lang.Object> responseExpectations)
                                                                       throws TestingFrameworkException
        See the documentation for the same method in ClientPOJOAdapter. This method will typically call it. However, this method also has access to the test's response expectations if that is needed for some reason. Furthermore, this method also has access to the TestingFrameworkRequestHandler so it can optionally call assertNothingThrown() before checking the response further. It is optional because the test framework will call it later.
        Parameters:
        defaultURI - See execute method of ClientPOJOAdapter.
        request - See execute method of ClientPOJOAdapter.
        requestHandler - The request handler that checks the received HTTP request with the request that was intended. If there is a mismatch of expectations, then the requestHandler will throw an exception. If this execute method does not want to make further checks of the response in the case the responseHandler threw, then the assertNothingThrown() method should be called before doing further checks.
        responseExpectations - The response expectations of the test.
        Returns:
        See return of the execute method of ClientPOJOAdapter.
        Throws:
        TestingFrameworkException - in the case of a problem.
      • isRequestSupported

        public boolean isRequestSupported​(java.util.Map<java.lang.String,​java.lang.Object> request)
        See the documentation for the same method in ClientPOJOAdapter.
      • modifyRequest

        public java.util.Map<java.lang.String,​java.lang.Object> modifyRequest​(java.util.Map<java.lang.String,​java.lang.Object> request)
        See the documentation for the same method in ClientPOJOAdapter.
      • modifyResponseExpectations

        public java.util.Map<java.lang.String,​java.lang.Object> modifyResponseExpectations​(java.util.Map<java.lang.String,​java.lang.Object> request,
                                                                                                 java.util.Map<java.lang.String,​java.lang.Object> responseExpectations)
        Generally a test's response expectations should not need to be modified, but if a particular HTTP client (such as Groovy's RESTClient which uses HttpClient) needs to modify the response expectations, it should do so here. After this method returns, the TestingFrameworkRequestHandler is sent the expectations so the request handler will return a response that matches the expectations. When the HTTP response is obtained, the received response is matched against the expectations.
        Parameters:
        request - for the format, see the documentation for ClientPOJOAdapter.
        responseExpectations - for the format, see the documentation for ClientPOJOAdapter.
        Returns:
        the same or modified response expectations.