Interface RestTestClient.BodyContentSpec

Enclosing interface:
RestTestClient

public static interface RestTestClient.BodyContentSpec
Spec for expectations on the response body content.
Since:
7.0
Author:
Rob Worsnop, Rossen Stoyanchev
  • Method Details

    • isEmpty

      Assert the response body is empty and return the exchange result.
    • json

      default RestTestClient.BodyContentSpec json(String expectedJson)
      Parse the expected and actual response content as JSON and perform a comparison verifying that they contain the same attribute-value pairs regardless of formatting with lenient checking (extensible and non-strict array ordering).

      Use of this method requires the JSONassert library to be on the classpath.

      Parameters:
      expectedJson - the expected JSON content
      See Also:
    • json

      RestTestClient.BodyContentSpec json(String expectedJson, JsonCompareMode compareMode)
      Parse the expected and actual response content as JSON and perform a comparison using the given mode. If the comparison failed, throws an AssertionError with the message of the JsonComparison.

      Use of this method requires the JSONassert library to be on the classpath.

      Parameters:
      expectedJson - the expected JSON content
      compareMode - the compare mode
      See Also:
    • json

      RestTestClient.BodyContentSpec json(String expectedJson, JsonComparator comparator)
      Parse the expected and actual response content as JSON and perform a comparison using the given JsonComparator. If the comparison failed, throws an AssertionError with the message of the JsonComparison.
      Parameters:
      expectedJson - the expected JSON content
      comparator - the comparator to use
    • xml

      Parse expected and actual response content as XML and assert that the two are "similar", i.e. they contain the same elements and attributes regardless of order.

      Use of this method requires the XMLUnit library on the classpath.

      Parameters:
      expectedXml - the expected XML content.
      See Also:
    • jsonPath

      JsonPathAssertions jsonPath(String expression)
      Access to response body assertions using a JsonPath expression to inspect a specific subset of the body.
      Parameters:
      expression - the JsonPath expression
    • xpath

      default XpathAssertions xpath(String expression, Object... args)
      Access to response body assertions using an XPath expression to inspect a specific subset of the body.

      The XPath expression can be a parameterized string using formatting specifiers as defined in String.format(String, Object...).

      Parameters:
      expression - the XPath expression
      args - arguments to parameterize the expression
      See Also:
    • xpath

      XpathAssertions xpath(String expression, @Nullable Map<String,String> namespaces, Object... args)
      Access to response body assertions with specific namespaces using an XPath expression to inspect a specific subset of the body.

      The XPath expression can be a parameterized string using formatting specifiers as defined in String.format(String, Object...).

      Parameters:
      expression - the XPath expression
      namespaces - the namespaces to use
      args - arguments to parameterize the expression
    • consumeWith

      Assert the response body content with the given Consumer.
      Parameters:
      consumer - the consumer for the response body; the input byte[] may be null if there was no response body.
    • returnResult

      EntityExchangeResult<byte[]> returnResult()
      Exit the chained API and return an ExchangeResult with the raw response content.