diff --git a/spring-cloud-contract-dependencies/pom.xml b/spring-cloud-contract-dependencies/pom.xml
index 5201cead33..a80b5dbf93 100644
--- a/spring-cloud-contract-dependencies/pom.xml
+++ b/spring-cloud-contract-dependencies/pom.xml
@@ -15,7 +15,7 @@
spring-cloud-contract-dependencies
Spring Cloud Contract Dependencies
- 2.31.0
+ 2.33.0
0.6.1
diff --git a/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/provider/wiremock/TestWireMockExtensions.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/provider/wiremock/TestWireMockExtensions.groovy
index bb69a4b1fc..346f457730 100644
--- a/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/provider/wiremock/TestWireMockExtensions.groovy
+++ b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/provider/wiremock/TestWireMockExtensions.groovy
@@ -24,7 +24,6 @@ import com.github.tomakehurst.wiremock.http.ChunkedDribbleDelay
import com.github.tomakehurst.wiremock.http.HttpHeader
import com.github.tomakehurst.wiremock.http.Request
import com.github.tomakehurst.wiremock.http.Response
-import wiremock.org.apache.http.HttpHeaders
import org.springframework.cloud.contract.verifier.dsl.wiremock.DefaultResponseTransformer
import org.springframework.cloud.contract.verifier.dsl.wiremock.WireMockExtensions
diff --git a/spring-cloud-contract-tools/spring-cloud-contract-converters/src/main/java/org/springframework/cloud/contract/verifier/wiremock/DefaultWireMockStubPostProcessor.java b/spring-cloud-contract-tools/spring-cloud-contract-converters/src/main/java/org/springframework/cloud/contract/verifier/wiremock/DefaultWireMockStubPostProcessor.java
index 6126e7fcf0..c7a646d4c9 100644
--- a/spring-cloud-contract-tools/spring-cloud-contract-converters/src/main/java/org/springframework/cloud/contract/verifier/wiremock/DefaultWireMockStubPostProcessor.java
+++ b/spring-cloud-contract-tools/spring-cloud-contract-converters/src/main/java/org/springframework/cloud/contract/verifier/wiremock/DefaultWireMockStubPostProcessor.java
@@ -66,7 +66,7 @@ class DefaultWireMockStubPostProcessor implements WireMockStubPostProcessor {
}
public ResponseDefinition mergedResponse(StubMapping stubMapping, StubMapping stubMappingFromMetadata) {
- ResponseDefinition responseDefinition = new ResponseDefinition(stubMapping.getResponse().getStatus(),
+ return new ResponseDefinition(stubMapping.getResponse().getStatus(),
stubMapping.getResponse().getStatusMessage(), stubMapping.getResponse().getBody(),
stubMapping.getResponse().getJsonBody(), stubMapping.getResponse().getBase64Body(),
stubMapping.getResponse().getBodyFileName(), stubMapping.getResponse().getHeaders(),
@@ -74,11 +74,11 @@ class DefaultWireMockStubPostProcessor implements WireMockStubPostProcessor {
fixedDelayMilliseconds(stubMapping, stubMappingFromMetadata),
delayDistribution(stubMapping, stubMappingFromMetadata),
chunkedDribbleDelay(stubMapping, stubMappingFromMetadata),
- proxyBaseUrl(stubMapping, stubMappingFromMetadata), fault(stubMapping, stubMappingFromMetadata),
- transformers(stubMapping, stubMappingFromMetadata),
+ proxyBaseUrl(stubMapping, stubMappingFromMetadata),
+ proxyUrlPrefixToRemove(stubMapping, stubMappingFromMetadata),
+ fault(stubMapping, stubMappingFromMetadata), transformers(stubMapping, stubMappingFromMetadata),
transformerParameters(stubMapping, stubMappingFromMetadata),
wasConfigured(stubMapping, stubMappingFromMetadata));
- return responseDefinition;
}
public Boolean wasConfigured(StubMapping stubMapping, StubMapping stubMappingFromMetadata) {
@@ -108,6 +108,12 @@ class DefaultWireMockStubPostProcessor implements WireMockStubPostProcessor {
? stubMappingFromMetadata.getResponse().getProxyBaseUrl() : stubMapping.getResponse().getProxyBaseUrl();
}
+ public String proxyUrlPrefixToRemove(StubMapping stubMapping, StubMapping stubMappingFromMetadata) {
+ return stubMappingFromMetadata.getResponse().getProxyUrlPrefixToRemove() != null
+ ? stubMappingFromMetadata.getResponse().getProxyUrlPrefixToRemove()
+ : stubMapping.getResponse().getProxyUrlPrefixToRemove();
+ }
+
public ChunkedDribbleDelay chunkedDribbleDelay(StubMapping stubMapping, StubMapping stubMappingFromMetadata) {
return stubMappingFromMetadata.getResponse().getChunkedDribbleDelay() != null
? stubMappingFromMetadata.getResponse().getChunkedDribbleDelay()
diff --git a/tests/spring-cloud-contract-stub-runner-kafka/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/kafka/KafkaStubRunnerSpec.groovy b/tests/spring-cloud-contract-stub-runner-kafka/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/kafka/KafkaStubRunnerSpec.groovy
index 0915919b32..5f11a176fb 100644
--- a/tests/spring-cloud-contract-stub-runner-kafka/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/kafka/KafkaStubRunnerSpec.groovy
+++ b/tests/spring-cloud-contract-stub-runner-kafka/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/kafka/KafkaStubRunnerSpec.groovy
@@ -22,6 +22,8 @@ import java.util.concurrent.TimeUnit
import groovy.json.JsonOutput
import groovy.json.JsonSlurper
import groovy.util.logging.Commons
+import org.apache.kafka.clients.consumer.MockConsumer
+import org.apache.kafka.clients.consumer.OffsetResetStrategy
import spock.lang.IgnoreIf
import spock.lang.Specification
import spock.util.concurrent.PollingConditions
@@ -38,6 +40,7 @@ import org.springframework.kafka.annotation.EnableKafka
import org.springframework.kafka.annotation.KafkaListener
import org.springframework.kafka.core.KafkaTemplate
import org.springframework.kafka.support.DefaultKafkaHeaderMapper
+import org.springframework.kafka.test.EmbeddedKafkaBroker
import org.springframework.kafka.test.context.EmbeddedKafka
import org.springframework.messaging.Message
import org.springframework.messaging.MessageHeaders
@@ -190,8 +193,8 @@ class KafkaStubRunnerSpec extends Specification {
// end::trigger_all[]
Message receivedMessage = receiveFromOutput()
assert receivedMessage != null
- assert assertThatBodyContainsBookNameFoo(receivedMessage.getPayload())
- assert receivedMessage.getHeaders().get('BOOK-NAME') == 'foo'
+ assert assertThatBodyContainsBookName(receivedMessage.getPayload())
+ assert receivedMessage.getHeaders().get('BOOK-NAME') != null
}
}
@@ -229,6 +232,14 @@ class KafkaStubRunnerSpec extends Specification {
return json.bookName == expectedValue
}
+ private boolean assertThatBodyContainsBookName(Object payload) {
+ log.info("Got payload [" + payload + "]")
+ String objectAsString = payload instanceof String ? payload :
+ JsonOutput.toJson(payload)
+ def json = new JsonSlurper().parseText(objectAsString)
+ return json.bookName != null
+ }
+
@Configuration
@ComponentScan
@EnableAutoConfiguration
@@ -267,4 +278,4 @@ class KafkaStubRunnerSpec extends Specification {
return this.output
}
}
-}
\ No newline at end of file
+}