Class Expectation

    • Method Detail

      • when

        public static Expectation when​(String specUrlOrPayload,
                                       String operationId)
        Specify the OpenAPI and operationId to match against by URL or payload and string as follows:

           // Create from a publicly hosted HTTP location (json or yaml)
           when("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore-expanded.yaml", "showPetById")
        
           // Create from a file on the local filesystem (json or yaml)
           when("file://Users/myuser/git/mockserver/mockserver-core/src/test/resources/org/mockserver/openapi/openapi_petstore_example.json", "showPetById");
        
           // Create from a classpath resource in the /api package (json or yaml)
           when("org/mockserver/openapi/openapi_petstore_example.json", "showPetById");
        
           // Create from an OpenAPI payload (json or yaml)
           when("{\"openapi\": \"3.0.0\", \"info\": { ...", "showPetById")
         

        Parameters:
        specUrlOrPayload - the OpenAPI to match against by URL or payload
        operationId - operationId from the OpenAPI to match against i.e. "showPetById"
        Returns:
        the Expectation
      • when

        public static Expectation when​(String specUrlOrPayload,
                                       String operationId,
                                       int priority)
        Specify the OpenAPI and operationId to match against by URL or payload and string with a match priority as follows:

           // Create from a publicly hosted HTTP location (json or yaml)
           when("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore-expanded.yaml", "showPetById", 10)
        
           // Create from a file on the local filesystem (json or yaml)
           when("file://Users/myuser/git/mockserver/mockserver-core/src/test/resources/org/mockserver/openapi/openapi_petstore_example.json", "showPetById", 10);
        
           // Create from a classpath resource in the /api package (json or yaml)
           when("org/mockserver/openapi/openapi_petstore_example.json", "showPetById", 10);
        
           // Create from an OpenAPI payload (json or yaml)
           when("{\"openapi\": \"3.0.0\", \"info\": { ...", "showPetById", 10)
         

        Parameters:
        specUrlOrPayload - the OpenAPI to match against by URL or payload
        operationId - operationId from the OpenAPI to match against i.e. "showPetById"
        priority - the priority with which this expectation is used to match requests compared to other expectations (high first)
        Returns:
        the Expectation
      • when

        public static Expectation when​(String specUrlOrPayload,
                                       String operationId,
                                       Times times,
                                       TimeToLive timeToLive)
        Specify the OpenAPI and operationId to match against by URL or payload and string for a limit number of times or time as follows:

           // Create from a publicly hosted HTTP location (json or yaml)
           when("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore-expanded.yaml", "showPetById", 5, exactly(TimeUnit.SECONDS, 90))
        
           // Create from a file on the local filesystem (json or yaml)
           when("file://Users/myuser/git/mockserver/mockserver-core/src/test/resources/org/mockserver/openapi/openapi_petstore_example.json", "showPetById", 5, exactly(TimeUnit.SECONDS, 90));
        
           // Create from a classpath resource in the /api package (json or yaml)
           when("org/mockserver/openapi/openapi_petstore_example.json", "showPetById", 5, exactly(TimeUnit.SECONDS, 90));
        
           // Create from an OpenAPI payload (json or yaml)
           when("{\"openapi\": \"3.0.0\", \"info\": { ...", "showPetById", 5, exactly(TimeUnit.SECONDS, 90))
         

        Parameters:
        specUrlOrPayload - the OpenAPI to match against by URL or payload
        operationId - operationId from the OpenAPI to match against i.e. "showPetById"
        times - the number of times to use this expectation to match requests
        timeToLive - the time this expectation should be used to match requests
        Returns:
        the Expectation
      • when

        public static Expectation when​(String specUrlOrPayload,
                                       String operationId,
                                       Times times,
                                       TimeToLive timeToLive,
                                       int priority)
        Specify the OpenAPI and operationId to match against by URL or payload and string for a limit number of times or time and a match priority as follows:

           // Create from a publicly hosted HTTP location (json or yaml)
           when("https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v3.0/petstore-expanded.yaml", "showPetById", 5, exactly(TimeUnit.SECONDS, 90))
        
           // Create from a file on the local filesystem (json or yaml)
           when("file://Users/myuser/git/mockserver/mockserver-core/src/test/resources/org/mockserver/openapi/openapi_petstore_example.json", "showPetById", 5, exactly(TimeUnit.SECONDS, 90));
        
           // Create from a classpath resource in the /api package (json or yaml)
           when("org/mockserver/openapi/openapi_petstore_example.json", "showPetById", 5, exactly(TimeUnit.SECONDS, 90));
        
           // Create from an OpenAPI payload (json or yaml)
           when("{\"openapi\": \"3.0.0\", \"info\": { ...", "showPetById", 5, exactly(TimeUnit.SECONDS, 90))
         

        Parameters:
        specUrlOrPayload - the OpenAPI to match against by URL or payload
        operationId - operationId from the OpenAPI to match against i.e. "showPetById"
        times - the number of times to use this expectation to match requests
        timeToLive - the time this expectation should be used to match requests
        priority - the priority with which this expectation is used to match requests compared to other expectations (high first)
        Returns:
        the Expectation
      • when

        public static Expectation when​(HttpRequest httpRequest)
        Specify the HttpRequest to match against as follows:

             when(
                 request()
                     .withMethod("GET")
                     .withPath("/some/path")
             ).thenRespond(
                 response()
                     .withContentType(APPLICATION_JSON_UTF_8)
                     .withBody("{\"some\": \"body\"}")
             );
         

        Parameters:
        httpRequest - the HttpRequest to match against
        Returns:
        the Expectation
      • when

        public static Expectation when​(HttpRequest httpRequest,
                                       int priority)
        Specify the HttpRequest to match against with a match priority as follows:

             when(
                 request()
                     .withMethod("GET")
                     .withPath("/some/path"),
                 10
             ).thenRespond(
                 response()
                     .withContentType(APPLICATION_JSON_UTF_8)
                     .withBody("{\"some\": \"body\"}")
             );
         

        Parameters:
        httpRequest - the HttpRequest to match against
        priority - the priority with which this expectation is used to match requests compared to other expectations (high first)
        Returns:
        the Expectation
      • when

        public static Expectation when​(HttpRequest httpRequest,
                                       Times times,
                                       TimeToLive timeToLive)
        Specify the HttpRequest to match against for a limit number of times or time as follows:

             when(
                 request()
                     .withMethod("GET")
                     .withPath("/some/path"),
                 5,
                 exactly(TimeUnit.SECONDS, 90)
             ).thenRespond(
                 response()
                     .withContentType(APPLICATION_JSON_UTF_8)
                     .withBody("{\"some\": \"body\"}")
             );
         

        Parameters:
        httpRequest - the HttpRequest to match against
        times - the number of times to use this expectation to match requests
        timeToLive - the time this expectation should be used to match requests
        Returns:
        the Expectation
      • when

        public static Expectation when​(HttpRequest httpRequest,
                                       Times times,
                                       TimeToLive timeToLive,
                                       int priority)
        Specify the HttpRequest to match against for a limit number of times or time and a match priority as follows:

             when(
                 request()
                     .withMethod("GET")
                     .withPath("/some/path"),
                 5,
                 exactly(TimeUnit.SECONDS, 90),
                 10
             ).thenRespond(
                 response()
                     .withContentType(APPLICATION_JSON_UTF_8)
                     .withBody("{\"some\": \"body\"}")
             );
         

        Parameters:
        httpRequest - the HttpRequest to match against
        times - the number of times to use this expectation to match requests
        timeToLive - the time this expectation should be used to match requests
        priority - the priority with which this expectation is used to match requests compared to other expectations (high first)
        Returns:
        the Expectation
      • withId

        public Expectation 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
      • getId

        public String getId()
      • withPriority

        public Expectation 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
      • getPriority

        public int getPriority()
      • getPercentage

        public Integer getPercentage()
      • matchesByPercentage

        public boolean matchesByPercentage()
      • withCreated

        public Expectation withCreated​(long created)
      • getCreated

        public long getCreated()
      • getHttpResponseTemplate

        public HttpTemplate getHttpResponseTemplate()
      • getHttpResponseClassCallback

        public HttpClassCallback getHttpResponseClassCallback()
      • getHttpResponseObjectCallback

        public HttpObjectCallback getHttpResponseObjectCallback()
      • getHttpForwardTemplate

        public HttpTemplate getHttpForwardTemplate()
      • getHttpForwardClassCallback

        public HttpClassCallback getHttpForwardClassCallback()
      • getHttpError

        public HttpError getHttpError()
      • getScenarioName

        public String getScenarioName()
      • getScenarioState

        public String getScenarioState()
      • withNewScenarioState

        public Expectation withNewScenarioState​(String newScenarioState)
      • getNewScenarioState

        public String getNewScenarioState()
      • getAction

        public Action getAction()
      • getPrimaryAction

        public Action getPrimaryAction()
      • getSecondaryActions

        public List<Action> getSecondaryActions()
      • getTimes

        public Times getTimes()
      • getTimeToLive

        public TimeToLive getTimeToLive()
      • isActive

        public boolean isActive()
      • decrementRemainingMatches

        public boolean decrementRemainingMatches()
      • consumeMatch

        public boolean consumeMatch()
      • getMatchCount

        public int getMatchCount()
      • contains

        public boolean contains​(HttpRequest httpRequest)