Class ForwardChainExpectation


  • public class ForwardChainExpectation
    extends Object
    Author:
    jamesdbloom
    • Method Detail

      • withId

        public ForwardChainExpectation withId​(String id)

        Set id of this expectation which can be used to update this expectation later or for clearing or verifying by expectation id.

        Note: Each unique expectation must have a unique id otherwise this expectation will update a existing expectation with the same id.

        Parameters:
        id - unique string for expectation's id
      • withPriority

        public ForwardChainExpectation withPriority​(int priority)

        Set priority of this expectation which is used to determine the matching order of expectations when a request is received.

        Matching is ordered by priority (highest first) then creation (earliest first).

        Parameters:
        priority - expectation's priority
      • withPercentage

        public ForwardChainExpectation withPercentage​(Integer percentage)

        Set percentage of requests this expectation should match (0-100).

        When set, the expectation will only match the specified percentage of requests that structurally match, enabling probabilistic matching.

        Parameters:
        percentage - percentage of requests to match (0-100), or null for all requests
      • withScenarioName

        public ForwardChainExpectation withScenarioName​(String scenarioName)
        Set the scenario name for stateful expectation matching
        Parameters:
        scenarioName - the name of the scenario
      • withAfterAction

        public ForwardChainExpectation withAfterAction​(AfterAction afterAction)
        Set a single after-action to execute after the primary action completes
        Parameters:
        afterAction - the after-action to set
      • respond

        public Expectation[] respond​(HttpResponse httpResponse)
        Return response when expectation is matched
        Parameters:
        httpResponse - response to return
        Returns:
        added or updated expectations
      • respond

        public Expectation[] respond​(List<HttpResponse> httpResponses)
        Set a list of responses to cycle through sequentially when expectation is matched. Each match returns the next response in the list, cycling back to the first after the last.
        Parameters:
        httpResponses - list of responses to cycle through
        Returns:
        added or updated expectations
      • respond

        public Expectation[] respond​(HttpTemplate httpTemplate)
        Evaluate Velocity or JavaScript template to generate response to return when expectation is matched
        Parameters:
        httpTemplate - Velocity or JavaScript template used to generate response
        Returns:
        added or updated expectations
      • respond

        public Expectation[] respond​(HttpClassCallback httpClassCallback)
        Call method on local class in same JVM implementing ExpectationResponseCallback to generate response to return when expectation is matched

        The callback class must: - implement org.mockserver.mock.action.ExpectationResponseCallback - have a zero argument constructor - be available in the classpath of the MockServer

        Parameters:
        httpClassCallback - class to callback as a fully qualified class name, i.e. "com.foo.MyExpectationResponseCallback"
        Returns:
        added or updated expectations
      • respond

        public Expectation[] respond​(ExpectationResponseCallback expectationResponseCallback)
        Call method on object locally or remotely (over web socket) to generate response to return when expectation is matched
        Parameters:
        expectationResponseCallback - object to call locally or remotely to generate response
        Returns:
        added or updated expectations
      • respond

        public Expectation[] respond​(ExpectationResponseCallback expectationResponseCallback,
                                     Delay delay)
        Call method on object locally or remotely (over web socket) to generate response to return when expectation is matched
        Parameters:
        expectationResponseCallback - object to call locally or remotely to generate response
        Returns:
        added or updated expectations
      • forward

        public Expectation[] forward​(HttpForward httpForward)
        Forward request to the specified host and port when expectation is matched
        Parameters:
        httpForward - host and port to forward to
        Returns:
        added or updated expectations
      • forward

        public Expectation[] forward​(HttpTemplate httpTemplate)
        Evaluate Velocity or JavaScript template to generate request to forward when expectation is matched
        Parameters:
        httpTemplate - Velocity or JavaScript template used to generate response
        Returns:
        added or updated expectations
      • forward

        public Expectation[] forward​(HttpClassCallback httpClassCallback)
        Call method on local class in same JVM implementing ExpectationResponseCallback to generate request to forward when expectation is matched

        The callback class must: - implement org.mockserver.mock.action.ExpectationForwardCallback or org.mockserver.mock.action.ExpectationForwardAndResponseCallback - have a zero argument constructor - be available in the classpath of the MockServer

        Parameters:
        httpClassCallback - class to callback as a fully qualified class name, i.e. "com.foo.MyExpectationResponseCallback"
        Returns:
        added or updated expectations
      • forward

        public Expectation[] forward​(ExpectationForwardCallback expectationForwardCallback)
        Call method on object locally or remotely (over web socket) to generate request to forward when expectation is matched
        Parameters:
        expectationForwardCallback - object to call locally or remotely to generate request
        Returns:
        added or updated expectations
      • forward

        public Expectation[] forward​(ExpectationForwardCallback expectationForwardCallback,
                                     ExpectationForwardAndResponseCallback expectationForwardResponseCallback)
        Call method on object locally or remotely (over web socket) to generate request to forward when expectation is matched
        Parameters:
        expectationForwardCallback - object to call locally or remotely to generate request
        Returns:
        added or updated expectations
      • forward

        public Expectation[] forward​(ExpectationForwardCallback expectationForwardCallback,
                                     Delay delay)
        Call method on object locally or remotely (over web socket) to generate request to forward when expectation is matched
        Parameters:
        expectationForwardCallback - object to call locally or remotely to generate request
        Returns:
        added or updated expectations
      • forward

        public Expectation[] forward​(ExpectationForwardCallback expectationForwardCallback,
                                     ExpectationForwardAndResponseCallback expectationForwardResponseCallback,
                                     Delay delay)
        Call method on object locally or remotely (over web socket) to generate request to forward when expectation is matched
        Parameters:
        expectationForwardCallback - object to call locally or remotely to generate request
        Returns:
        added or updated expectations
      • forward

        public Expectation[] forward​(HttpOverrideForwardedRequest httpOverrideForwardedRequest)
        Override fields, headers, and cookies etc in request being forwarded with specified fields, headers and cookies, etc in the specified request when expectation is matched
        Parameters:
        httpOverrideForwardedRequest - contains request to override request being forwarded
        Returns:
        added or updated expectations
      • error

        public Expectation[] error​(HttpError httpError)
        Return error when expectation is matched
        Parameters:
        httpError - error to return
        Returns:
        added or updated expectations