diff --git a/pom.xml b/pom.xml
index d6eef521e..73d3c4e3b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
2.0.1.BUILD-SNAPSHOT
Elmhurst.BUILD-SNAPSHOT
- 1.2.4.RELEASE
+ 2.0.2.RELEASE
3.6.1
diff --git a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/doc/RequestVerifierFilter.java b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/doc/RequestVerifierFilter.java
index 719f4fc86..edaf91808 100644
--- a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/doc/RequestVerifierFilter.java
+++ b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/doc/RequestVerifierFilter.java
@@ -37,17 +37,18 @@ import com.github.tomakehurst.wiremock.http.RequestMethod;
import com.github.tomakehurst.wiremock.matching.MatchResult;
import com.github.tomakehurst.wiremock.stubbing.StubMapping;
import com.jayway.jsonpath.JsonPath;
-
import io.restassured.filter.Filter;
import io.restassured.filter.FilterContext;
import io.restassured.http.Header;
import io.restassured.response.Response;
import io.restassured.specification.FilterableRequestSpecification;
import io.restassured.specification.FilterableResponseSpecification;
+import wiremock.com.google.common.base.Optional;
+
import org.springframework.util.Base64Utils;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
-import wiremock.com.google.common.base.Optional;
+import org.springframework.web.util.UriComponentsBuilder;
import static org.assertj.core.api.Assertions.assertThat;
@@ -90,7 +91,7 @@ public class RequestVerifierFilter implements Filter {
@Override
public Response filter(FilterableRequestSpecification requestSpec,
- FilterableResponseSpecification responseSpec, FilterContext context) {
+ FilterableResponseSpecification responseSpec, FilterContext context) {
Map configuration = getConfiguration(requestSpec, context);
configuration.put("contract.jsonPaths", this.jsonPaths.keySet());
Response response = context.next(requestSpec, responseSpec);
@@ -209,6 +210,21 @@ class WireMockRestAssuredRequestAdapter implements Request {
return Optional.of(this);
}
+ @Override
+ public String getScheme() {
+ return UriComponentsBuilder.fromUriString(request.getURI()).build().getScheme();
+ }
+
+ @Override
+ public String getHost() {
+ return UriComponentsBuilder.fromUriString(request.getURI()).build().getHost();
+ }
+
+ @Override
+ public int getPort() {
+ return request.getPort();
+ }
+
@Override
public String getUrl() {
return request.getDerivedPath();
@@ -340,4 +356,5 @@ class WireMockRestAssuredRequestAdapter implements Request {
public Part getPart(String s) {
return null;
}
+
}
diff --git a/spring-cloud-netflix-hystrix-contract/pom.xml b/spring-cloud-netflix-hystrix-contract/pom.xml
index d4818ce6a..bd82c32f2 100644
--- a/spring-cloud-netflix-hystrix-contract/pom.xml
+++ b/spring-cloud-netflix-hystrix-contract/pom.xml
@@ -14,7 +14,7 @@
spring-cloud-netflix-hystrix-contract
Spring Cloud Netflix Hystrix Contract
- 2.0.0.RELEASE
+ 2.0.2.RELEASE
diff --git a/spring-cloud-netflix-turbine-stream/src/test/java/org/springframework/cloud/netflix/turbine/stream/TurbineStreamTests.java b/spring-cloud-netflix-turbine-stream/src/test/java/org/springframework/cloud/netflix/turbine/stream/TurbineStreamTests.java
index fb1211cd9..240c3e226 100644
--- a/spring-cloud-netflix-turbine-stream/src/test/java/org/springframework/cloud/netflix/turbine/stream/TurbineStreamTests.java
+++ b/spring-cloud-netflix-turbine-stream/src/test/java/org/springframework/cloud/netflix/turbine/stream/TurbineStreamTests.java
@@ -22,18 +22,24 @@ import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URI;
import java.util.Map;
+
+import com.fasterxml.jackson.databind.ObjectMapper;
import org.junit.Test;
import org.junit.runner.RunWith;
+
+import org.springframework.beans.BeansException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.beans.factory.config.BeanDefinition;
+import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
+import org.springframework.beans.factory.support.BeanDefinitionRegistry;
+import org.springframework.beans.factory.support.BeanDefinitionRegistryPostProcessor;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.web.server.LocalServerPort;
import org.springframework.cloud.contract.stubrunner.StubTrigger;
import org.springframework.cloud.contract.stubrunner.spring.AutoConfigureStubRunner;
-import org.springframework.cloud.contract.verifier.messaging.MessageVerifier;
-import org.springframework.cloud.contract.verifier.messaging.stream.StreamStubMessages;
-import org.springframework.context.ApplicationContext;
+import org.springframework.cloud.contract.stubrunner.spring.StubRunnerProperties.StubsMode;
import org.springframework.context.annotation.Bean;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
@@ -45,11 +51,9 @@ import org.springframework.http.client.ClientHttpRequestExecution;
import org.springframework.http.client.ClientHttpRequestInterceptor;
import org.springframework.http.client.ClientHttpResponse;
import org.springframework.integration.support.management.MessageChannelMetrics;
-import org.springframework.messaging.Message;
import org.springframework.messaging.SubscribableChannel;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.web.client.RestTemplate;
-import com.fasterxml.jackson.databind.ObjectMapper;
import static org.assertj.core.api.Assertions.assertThat;
import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.RANDOM_PORT;
@@ -65,7 +69,7 @@ import static org.springframework.boot.test.context.SpringBootTest.WebEnvironmen
"spring.cloud.stream.bindings.turbineStreamInput.destination=hystrixStreamOutput",
"spring.jmx.enabled=true", "stubrunner.workOffline=true",
"stubrunner.ids=org.springframework.cloud:spring-cloud-netflix-hystrix-stream:${projectVersion:2.0.0.BUILD-SNAPSHOT}:stubs"})
-@AutoConfigureStubRunner
+@AutoConfigureStubRunner(stubsMode = StubsMode.LOCAL)
public class TurbineStreamTests {
@Autowired
StubTrigger stubTrigger;
@@ -88,20 +92,18 @@ public class TurbineStreamTests {
@EnableAutoConfiguration
@EnableTurbineStream
public static class Application {
+ // Workaround for stub runner lowercasing id somewhere
@Bean
- //TODO This can be removed after Finchley.RELEASE, once we can use Spring Cloud Contract Verifier 2.0.0
- //This is a hack to allow compatibility between Stream 2.0.0, which is sending everything as a byte array,
- //and contract which is assuming everything is a String.
- public MessageVerifier> customMessageVerifier(ApplicationContext context) {
- return new StreamStubMessages(context) {
+ BeanDefinitionRegistryPostProcessor myBeanDefinitionRegistryPostProcessor() {
+ return new BeanDefinitionRegistryPostProcessor() {
@Override
- public void send(T payload, Map headers, String destination) {
- if(String.class.isInstance(payload)){
- super.send(((String)payload).getBytes(), headers, destination);
- return;
- }
- super.send(payload, headers, destination);
+ public void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException {
+ BeanDefinition beanDefinition = registry.getBeanDefinition(TurbineStreamClient.INPUT);
+ registry.registerBeanDefinition(TurbineStreamClient.INPUT.toLowerCase(), beanDefinition);
}
+
+ @Override
+ public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { }
};
}
}