diff --git a/spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/dsl/wiremock/WireMockResponseStubStrategy.groovy b/spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/dsl/wiremock/WireMockResponseStubStrategy.groovy index 4c0e4d8c7c..f0fee12960 100755 --- a/spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/dsl/wiremock/WireMockResponseStubStrategy.groovy +++ b/spring-cloud-contract-verifier/src/main/groovy/org/springframework/cloud/contract/verifier/dsl/wiremock/WireMockResponseStubStrategy.groovy @@ -26,6 +26,7 @@ import org.springframework.cloud.contract.spec.Contract import org.springframework.cloud.contract.spec.internal.Request import org.springframework.cloud.contract.spec.internal.Response import org.springframework.cloud.contract.verifier.util.ContentType +import org.springframework.cloud.contract.verifier.util.MapConverter import static org.springframework.cloud.contract.verifier.util.ContentUtils.recognizeContentTypeFromContent import static org.springframework.cloud.contract.verifier.util.ContentUtils.recognizeContentTypeFromHeader @@ -51,7 +52,7 @@ class WireMockResponseStubStrategy extends BaseWireMockStubStrategy { return null } ResponseDefinitionBuilder builder = new ResponseDefinitionBuilder() - .withStatus(response.status.clientValue as Integer) + .withStatus(MapConverter.getStubSideValues(response.status) as Integer) appendHeaders(builder) appendBody(builder) appendResponseDelayTime(builder) @@ -62,7 +63,7 @@ class WireMockResponseStubStrategy extends BaseWireMockStubStrategy { private void appendHeaders(ResponseDefinitionBuilder builder) { if (response.headers) { builder.withHeaders(new HttpHeaders(response.headers.entries?.collect { - new HttpHeader(it.name, it.clientValue.toString()) + new HttpHeader(it.name, MapConverter.getStubSideValues(it.clientValue).toString()) })) } } diff --git a/spring-cloud-contract-verifier/src/test/groovy/org/springframework/cloud/contract/verifier/dsl/WireMockGroovyDslSpec.groovy b/spring-cloud-contract-verifier/src/test/groovy/org/springframework/cloud/contract/verifier/dsl/WireMockGroovyDslSpec.groovy index 5a7d1f3424..f4df63cb15 100755 --- a/spring-cloud-contract-verifier/src/test/groovy/org/springframework/cloud/contract/verifier/dsl/WireMockGroovyDslSpec.groovy +++ b/spring-cloud-contract-verifier/src/test/groovy/org/springframework/cloud/contract/verifier/dsl/WireMockGroovyDslSpec.groovy @@ -1755,7 +1755,7 @@ class WireMockGroovyDslSpec extends Specification implements WireMockStubVerifie response { status 200 headers { - header(authorization(), fromRequest().header(authorization())) + header(authorization(), "${fromRequest().header(authorization())};foo") } body( url: fromRequest().url(), @@ -1798,7 +1798,7 @@ class WireMockGroovyDslSpec extends Specification implements WireMockStubVerifie "status" : 200, "body" : "{\\"url\\":\\"{{{request.url}}}\\",\\"param\\":\\"{{{request.query.foo.[0]}}}\\",\\"paramIndex\\":\\"{{{request.query.foo.[1]}}}\\",\\"authorization\\":\\"{{{request.headers.Authorization.[0]}}}\\",\\"authorization2\\":\\"{{{request.headers.Authorization.[1]}}}\\",\\"fullBody\\":\\"{{{escapejsonbody}}}\\",\\"responseFoo\\":\\"{{{jsonpath this '$.foo'}}}\\",\\"responseBaz\\":{{{jsonpath this '$.baz'}}} ,\\"responseBaz2\\":\\"Bla bla {{{jsonpath this '$.foo'}}} bla bla\\"}", "headers" : { - "Authorization" : "{{{request.headers.Authorization.[0]}}}" + "Authorization" : "{{{request.headers.Authorization.[0]}}};foo" }, "transformers" : [ "response-template" ] } @@ -1813,7 +1813,7 @@ class WireMockGroovyDslSpec extends Specification implements WireMockStubVerifie server.addStubMapping(WireMockStubMapping.buildFrom(json)) then: ResponseEntity entity = call(port) - entity.headers.find { it.key == "Authorization" && it.value.contains("secret") } + entity.headers.find { it.key == "Authorization" && it.value.contains("secret;foo") } and: AssertionUtil.assertThatJsonsAreEqual((''' {