Сопоставление заглушки
{
"request": {
"method": "GET",
"urlPathPattern": "/validation/session/([a-zA-Z0-9/-]*)"
},
"response": {
"status": 200,
"jsonBody": {
"isIpBlocked": "Y",
"serviceMessage": {
"type": "OK",
"code": "200",
"description": "IP validated successfully. No result found"
}
},
"headers": {
"Content-Type": "application/json"
}
}
}
не может соответствовать URL
https://mywebsite/validation/session/687d69ae-42a8-4584-a395-8e0c876bacae (как абсолютный, так и относительный путьне работает)
Также попытался заменить urlPathPattern на urlPattern, но безуспешно
Пробовал все нижеприведенные комбинации.Ничего не работает
/validation/session/([a-zA-Z0-9\\-]+)
/validation/session/([a-zA-Z0-9\\-]*)
/validation/session/([a-zA-Z0-9/-]+)
/validation/session/([a-zA-Z0-9/-]*)
Примечание: Wiremock версии 2.18.0, Spring Boot 2.0
На самом деле, кроме URL (в сопоставлении заглушки с абсолютным URL), ничего не работает дляменя.
Это прекрасно работает, если я использую только Wiremock.Это не работает, если я использую Wiremock в тандеме с WireMockRestServiceServer (spring-cloud-contract).
Рабочий код - только с Wiremock
@Rule
public WireMockRule wireMockRule = new WireMockRule(wireMockConfig().port(8080).httpsPort(443));
stubFor(get(urlMatching("/validation/session/([a-zA-Z0-9/-]*)")) .willReturn(aResponse().withStatus(HttpStatus.OK.value()).withHeader("Content-Type", "application/json")
.withBody("{\"isIpBlocked\": \"Y\"}")));
Не работает - код с WireMockRestServiceServer
MockRestServiceServer server = WireMockRestServiceServer.with(this.restTemplate)
.stubs("classpath:/stubs/**/validate-ip-success-mock-response.json").build();