Class RootUriRequestExpectationManager

  • All Implemented Interfaces:
    org.springframework.test.web.client.RequestExpectationManager

    public class RootUriRequestExpectationManager
    extends Object
    implements org.springframework.test.web.client.RequestExpectationManager
    RequestExpectationManager that strips the specified root URI from the request before verification. Can be used to simply test declarations when all REST calls start the same way. For example:
     RestTemplate restTemplate = new RestTemplateBuilder().rootUri("http://example.com").build();
     MockRestServiceServer server = RootUriRequestExpectationManager.bindTo(restTemplate);
     server.expect(requestTo("/hello")).andRespond(withSuccess());
     restTemplate.getForEntity("/hello", String.class);
     
    Since:
    1.4.0
    See Also:
    RootUriTemplateHandler, bindTo(RestTemplate), forRestTemplate(RestTemplate, RequestExpectationManager)
    • Constructor Summary

      Constructors 
      ConstructorDescription
      RootUriRequestExpectationManager​(String rootUri, org.springframework.test.web.client.RequestExpectationManager expectationManager) 
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and TypeMethodDescription
      static org.springframework.test.web.client.MockRestServiceServerbindTo​(org.springframework.web.client.RestTemplate restTemplate)
      Return a bound MockRestServiceServer for the given RestTemplate, configured with RootUriRequestExpectationManager when possible.
      static org.springframework.test.web.client.MockRestServiceServerbindTo​(org.springframework.web.client.RestTemplate restTemplate, org.springframework.test.web.client.RequestExpectationManager expectationManager)
      Return a bound MockRestServiceServer for the given RestTemplate, configured with RootUriRequestExpectationManager when possible.
      org.springframework.test.web.client.ResponseActionsexpectRequest​(org.springframework.test.web.client.ExpectedCount count, org.springframework.test.web.client.RequestMatcher requestMatcher) 
      static org.springframework.test.web.client.RequestExpectationManagerforRestTemplate​(org.springframework.web.client.RestTemplate restTemplate, org.springframework.test.web.client.RequestExpectationManager expectationManager)
      Return RequestExpectationManager to be used for binding with the specified RestTemplate.
      voidreset() 
      org.springframework.http.client.ClientHttpResponsevalidateRequest​(org.springframework.http.client.ClientHttpRequest request) 
      voidverify() 
    • Constructor Detail

    • Method Detail

      • expectRequest

        public org.springframework.test.web.client.ResponseActions expectRequest​(org.springframework.test.web.client.ExpectedCount count,
                                                                                 org.springframework.test.web.client.RequestMatcher requestMatcher)
        Specified by:
        expectRequest in interface org.springframework.test.web.client.RequestExpectationManager
      • validateRequest

        public org.springframework.http.client.ClientHttpResponse validateRequest​(org.springframework.http.client.ClientHttpRequest request)
                                                                           throws IOException
        Specified by:
        validateRequest in interface org.springframework.test.web.client.RequestExpectationManager
        Throws:
        IOException
      • verify

        public void verify()
        Specified by:
        verify in interface org.springframework.test.web.client.RequestExpectationManager
      • reset

        public void reset()
        Specified by:
        reset in interface org.springframework.test.web.client.RequestExpectationManager
      • bindTo

        public static org.springframework.test.web.client.MockRestServiceServer bindTo​(org.springframework.web.client.RestTemplate restTemplate)
        Return a bound MockRestServiceServer for the given RestTemplate, configured with RootUriRequestExpectationManager when possible.
        Parameters:
        restTemplate - the source REST template
        Returns:
        a configured MockRestServiceServer
      • bindTo

        public static org.springframework.test.web.client.MockRestServiceServer bindTo​(org.springframework.web.client.RestTemplate restTemplate,
                                                                                       org.springframework.test.web.client.RequestExpectationManager expectationManager)
        Return a bound MockRestServiceServer for the given RestTemplate, configured with RootUriRequestExpectationManager when possible.
        Parameters:
        restTemplate - the source REST template
        expectationManager - the source RequestExpectationManager
        Returns:
        a configured MockRestServiceServer
      • forRestTemplate

        public static org.springframework.test.web.client.RequestExpectationManager forRestTemplate​(org.springframework.web.client.RestTemplate restTemplate,
                                                                                                    org.springframework.test.web.client.RequestExpectationManager expectationManager)
        Return RequestExpectationManager to be used for binding with the specified RestTemplate. If the RestTemplate is using a RootUriTemplateHandler then a RootUriRequestExpectationManager is returned, otherwise the source manager is returned unchanged.
        Parameters:
        restTemplate - the source REST template
        expectationManager - the source RequestExpectationManager
        Returns:
        a RequestExpectationManager to be bound to the template