dslContract, сгенерированный из пружинных restdoc, не работающих с queryParameters - PullRequest
1 голос
/ 08 мая 2019

Когда я создаю dslcontracts в своем тесте restdoc с параметрами запроса, он создает файл контракта groovy, а также файл-заглушку. Но когда я развертываю контракт с помощью @EnableStubRunnerServer, я никогда не могу получить параметры запроса для соответствия.

Я понял, что заглушка генерируется с запросом, похожим на:

"request" : {
    "url" : "/search",
    "method" : "GET",
    "queryParameters" : {
      "query" : {
        "equalTo" : "friday"
      }
    }
  }

However if i change the stub file to :

"request" : {
    "urlPathPattern" : "/search",
    "method" : "GET",
    "queryParameters" : {
      "query" : {
        "equalTo" : "friday"
      }
    }
  }
it seems to work. Is there a way to make this work?

Here is how i'm writing the test:

@Test
public void searchWithQuery() throws Exception {
    Map<String, Object> param = new HashMap<>();
    param.put("query", "equalTo(\"friday\")");

    mockMvc.perform(get(SEARCH_PATH + "?query=friday"))
            .andExpect(status().isOk())
            .andDo(document("search-query",
                    dslContract(param)
            ));
 }
...