com.github.kristofa.test.http
Class AbstractHttpResponseProvider

java.lang.Object
  extended by com.github.kristofa.test.http.AbstractHttpResponseProvider
All Implemented Interfaces:
HttpResponseProvider
Direct Known Subclasses:
DefaultHttpResponseProvider, FileHttpResponseProvider, SimpleHttpResponseProvider

public abstract class AbstractHttpResponseProvider
extends Object
implements HttpResponseProvider

Abstract HttpResponseProvider that contains the following functionality:

If you create your own HttpResponseProvider it is probably a good idea to extend this class.

Author:
kristof
See Also:
DefaultHttpResponseProvider, FileHttpResponseProvider

Constructor Summary
AbstractHttpResponseProvider()
           
 
Method Summary
protected  void addExpected(HttpRequest request, HttpResponseProxy responseProxy)
          Adds an expected HttpRequest and response proxy combination.
 void addHttpRequestMatchingFilter(HttpRequestMatchingFilter filter)
          Adds a HttpRequestMatchingFilter to the chain of http request matching filters.
 HttpResponse getResponse(HttpRequest request)
          Gets expected response for given request.
protected  void lazyInitializeExpectedRequestsAndResponses()
          Override this method if you want to lazily initialize requests/responses.
protected  void resetState()
          Clear expected request/responses as well as already received unexpected requests.
 void verify()
          Should be executed when all requests have been submitted.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractHttpResponseProvider

public AbstractHttpResponseProvider()
Method Detail

addExpected

protected final void addExpected(HttpRequest request,
                                 HttpResponseProxy responseProxy)
Adds an expected HttpRequest and response proxy combination.

Parameters:
request - Expected http request.
responseProxy - Response proxy which gives us access to http response.

lazyInitializeExpectedRequestsAndResponses

protected void lazyInitializeExpectedRequestsAndResponses()
Override this method if you want to lazily initialize requests/responses.

This method will be called with the first call to getResponse(HttpRequest).

You can initialize expected requests and responses by calling addExpected(HttpRequest, HttpResponseProxy).


resetState

protected final void resetState()
Clear expected request/responses as well as already received unexpected requests.

Allows re-use for new test without having to recreate instance.


getResponse

public final HttpResponse getResponse(HttpRequest request)
Gets expected response for given request.

Specified by:
getResponse in interface HttpResponseProvider
Parameters:
request - HttpRequest.
Returns:
Response or null in case we don't know given request.

addHttpRequestMatchingFilter

public final void addHttpRequestMatchingFilter(HttpRequestMatchingFilter filter)
Adds a HttpRequestMatchingFilter to the chain of http request matching filters.

Parameters:
filter - HttpRequestMatchingFilter.

verify

public final void verify()
                  throws UnsatisfiedExpectationException
Should be executed when all requests have been submitted. Checks if all expected requests have been requested.

Specified by:
verify in interface HttpResponseProvider
Throws:
UnsatisfiedExpectationException - In case expectation were not as expected. See UnsatisfiedExpectationException.getMissingHttpRequests() and UnsatisfiedExpectationException.getUnexpectedHttpRequests() to get missing and unexpected requests.


Copyright © 2014. All Rights Reserved.