首页 > 解决方案 > 消费者期待 List 的回应使用协议

问题描述

我正在创建这样的契约消费者合同

  private RequestResponsePact createConsumerContract(final PactDslWithProvider pactDslWithProvider,
      final String path,
      final String query,
      final String state,
      final String description,
      final HttpStatus status,
      final DslPart expectedResponseBody,
      final String mediaType) {

    final Map<String, String> responseHeaders = new HashMap<>();
    responseHeaders.put("Content-Type", mediaType);

    return pactDslWithProvider.given(state)
        .uponReceiving(description)
        .path(path)
        .query(query)
        .method("GET")
        .headers("Accept", mediaType)
        .willRespondWith()
        .status(status.value())
        .headers(responseHeaders)
        .body(new PactDslJsonBody().eachArrayLike())
        .toPact();
  }

消费者期望得到的回应是List<String>

如何在契约消费者合同中指定响应主体。

标签: javajunitpact

解决方案


你可以试试这个:

PactDslJsonArray.arrayEachLike(PactDslJsonRootValue.stringType("some example string"))

推荐阅读