diff --git a/pom.xml b/pom.xml
index e7ec4c4afc..5913b04342 100644
--- a/pom.xml
+++ b/pom.xml
@@ -36,6 +36,7 @@
spring-cloud-contract-verifier
spring-cloud-contract-spec
spring-cloud-contract-stub-runner
+ spring-cloud-contract-starters
spring-cloud-contract-tools
samples
diff --git a/spring-cloud-contract-starters/pom.xml b/spring-cloud-contract-starters/pom.xml
new file mode 100644
index 0000000000..a4004b2f9e
--- /dev/null
+++ b/spring-cloud-contract-starters/pom.xml
@@ -0,0 +1,24 @@
+
+
+ 4.0.0
+
+
+ org.springframework.cloud
+ spring-cloud-contract-parent
+ 1.0.0.BUILD-SNAPSHOT
+ ..
+
+
+ spring-cloud-contract-starters
+ pom
+
+ Spring Cloud Contract Starters
+ Spring Cloud Contract Starters
+
+
+ spring-cloud-starter-contract-stub-runner-jetty
+
+
+
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-jetty/README.adoc b/spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner-jetty/README.adoc
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-jetty/README.adoc
rename to spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner-jetty/README.adoc
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-jetty/pom.xml b/spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner-jetty/pom.xml
similarity index 82%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-jetty/pom.xml
rename to spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner-jetty/pom.xml
index 6e57967745..9b1ff0094e 100644
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-jetty/pom.xml
+++ b/spring-cloud-contract-starters/spring-cloud-starter-contract-stub-runner-jetty/pom.xml
@@ -4,14 +4,14 @@
4.0.0
org.springframework.cloud
- spring-cloud-contract-stub-runner-build
+ spring-cloud-contract-starters
1.0.0.BUILD-SNAPSHOT
..
- spring-cloud-contract-stub-runner-jetty
+ spring-cloud-starter-contract-stub-runner-jetty
jar
- spring-cloud-contract-stub-runner-jetty
- Spring Cloud Contract Stub Runner
+ spring-cloud-starter-contract-stub-runner-jetty
+ Spring Cloud Contract Stub Runner Jetty runs wiremock stubs with "native" jetty. Don't use this in a Spring Boot app with its own embedded container.
org.springframework.cloud
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/README.adoc b/spring-cloud-contract-stub-runner/README.adoc
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/README.adoc
rename to spring-cloud-contract-stub-runner/README.adoc
diff --git a/spring-cloud-contract-stub-runner/pom.xml b/spring-cloud-contract-stub-runner/pom.xml
index adc58ab739..6c0b51056a 100644
--- a/spring-cloud-contract-stub-runner/pom.xml
+++ b/spring-cloud-contract-stub-runner/pom.xml
@@ -1,28 +1,160 @@
-
4.0.0
-
org.springframework.cloud
spring-cloud-contract-parent
1.0.0.BUILD-SNAPSHOT
..
-
- spring-cloud-contract-stub-runner-build
- pom
-
- Spring Cloud Contract Stub Runner Build
- Spring Cloud Contract Stub Runner Build
-
-
- spring-cloud-contract-stub-runner
- spring-cloud-contract-stub-runner-jetty
- spring-cloud-contract-stub-runner-camel
- spring-cloud-contract-stub-runner-integration
- spring-cloud-contract-stub-runner-stream
-
-
+ spring-cloud-contract-stub-runner
+ jar
+ Spring Cloud Contract Stub Runner
+ Spring Cloud Contract Stub Runner
+
+
+ org.springframework.cloud
+ spring-cloud-contract-verifier
+
+
+ org.springframework.cloud
+ spring-cloud-stream-test-support
+ true
+
+
+ org.springframework.cloud
+ spring-cloud-contract-wiremock
+ true
+
+
+ org.springframework.cloud
+ spring-cloud-starter
+ true
+
+
+ org.springframework.cloud
+ spring-cloud-starter-ribbon
+ true
+
+
+ org.springframework.cloud
+ spring-cloud-contract-verifier
+
+
+ org.springframework.cloud
+ spring-cloud-contract-spec
+
+
+ org.springframework.boot
+ spring-boot-configuration-processor
+ true
+
+
+ org.springframework
+ spring-core
+
+
+ args4j
+ args4j
+
+
+ org.apache.camel
+ camel-spring-boot-starter
+ true
+
+
+ org.apache.camel
+ camel-jackson
+ true
+
+
+ org.springframework.integration
+ spring-integration-java-dsl
+ true
+
+
+ org.eclipse.aether
+ aether-api
+
+
+ org.eclipse.aether
+ aether-impl
+
+
+ org.eclipse.aether
+ aether-transport-file
+
+
+ org.eclipse.aether
+ aether-transport-http
+
+
+ org.eclipse.aether
+ aether-connector-basic
+
+
+ org.apache.maven
+ maven-aether-provider
+
+
+ junit
+ junit
+
+
+ cglib
+ cglib
+ test
+
+
+ com.jayway.restassured
+ spring-mock-mvc
+ test
+
+
+ org.spockframework
+ spock-spring
+ test
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+ test
+
+
+ info.solidsoft.spock
+ spock-global-unroll
+ test
+
+
+ org.springframework.cloud
+ spring-cloud-starter-zookeeper-discovery
+ test
+
+
+ org.apache.curator
+ curator-test
+ test
+
+
+
+
+
+ org.codehaus.gmavenplus
+ gmavenplus-plugin
+
+
+
+ testCompile
+
+
+
+
+
+
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/README.adoc b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/README.adoc
deleted file mode 100644
index 0a3ef49f3a..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/README.adoc
+++ /dev/null
@@ -1,123 +0,0 @@
-:input_name: jms:input
-:output_name: jms:output
-
-=== Stub Runner Camel
-
-Spring Cloud Contract Verifier Stub Runner's messaging module gives you an easy way to integrate with Apache Camel.
-For the provided artifacts it will automatically download the stubs and register the required
-routes.
-
-==== Adding it to the project
-
-To use it you have to add the following dependency to your project (example for Gradle):
-
-[source,groovy,indent=0]
-----
-testCompile "org.springframework.cloud:stub-runner-camel:${verifierVersion}"
-----
-
-==== Examples
-
-===== Stubs structure
-
-Let us assume that we have the following Maven repository with a deployed stubs for the
-`camelService` application.
-
-[source,bash,indent=0]
-----
-└── .m2
- └── repository
- └── io
- └── codearte
- └── accurest
- └── stubs
- └── camelService
- ├── 0.0.1-SNAPSHOT
- │ ├── camelService-0.0.1-SNAPSHOT.pom
- │ ├── camelService-0.0.1-SNAPSHOT-stubs.jar
- │ └── maven-metadata-local.xml
- └── maven-metadata-local.xml
-----
-
-And the stubs contain the following structure:
-
-[source,bash,indent=0]
-----
-├── META-INF
-│ └── MANIFEST.MF
-└── repository
- ├── accurest
- │ ├── bookDeleted.groovy
- │ ├── bookReturned1.groovy
- │ └── bookReturned2.groovy
- └── mappings
-----
-
-Let's consider the following contracts (let' number it with *1*):
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/CamelStubRunnerSpec.groovy[tags=sample_dsl,indent=0]
-----
-
-and number *2*
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/CamelStubRunnerSpec.groovy[tags=sample_dsl_2,indent=0]
-----
-
-===== Scenario 1 (no input message)
-
-So as to trigger a message via the `return_book_1` label we'll use the `StubTigger` interface as follows
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/CamelStubRunnerSpec.groovy[tags=client_trigger,indent=0]
-----
-
-Next we'll want to listen to the output of the message sent to `{output_name}`
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/CamelStubRunnerSpec.groovy[tags=client_trigger_receive,indent=0]
-----
-
-And the received message would pass the following assertions
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/CamelStubRunnerSpec.groovy[tags=client_trigger_message,indent=0]
-----
-
-===== Scenario 2 (output triggered by input)
-
-Since the route is set for you it's enough to just send a message to the `{output_name}` destination.
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/CamelStubRunnerSpec.groovy[tags=client_send,indent=0]
-----
-
-Next we'll want to listen to the output of the message sent to `{output_name}`
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/CamelStubRunnerSpec.groovy[tags=client_receive,indent=0]
-----
-
-And the received message would pass the following assertions
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/CamelStubRunnerSpec.groovy[tags=client_receive_message,indent=0]
-----
-
-===== Scenario 3 (input with no output)
-
-Since the route is set for you it's enough to just send a message to the `{output_name}` destination.
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/CamelStubRunnerSpec.groovy[tags=trigger_no_output,indent=0]
-----
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/pom.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/pom.xml
deleted file mode 100644
index 6dfca395ba..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/pom.xml
+++ /dev/null
@@ -1,97 +0,0 @@
-
-
- 4.0.0
-
- org.springframework.cloud
- spring-cloud-contract-stub-runner-build
- 1.0.0.BUILD-SNAPSHOT
- ..
-
- spring-cloud-contract-stub-runner-camel
- jar
- Spring Cloud Contract Stub Runner Camel
- Spring Cloud Contract Stub Runner Camel
-
-
- org.springframework.cloud
- spring-cloud-contract-stub-runner
-
-
- org.springframework.cloud
- spring-cloud-contract-stub-runner-jetty
- test
-
-
- org.springframework.cloud
- spring-cloud-contract-verifier
-
-
- org.apache.camel
- camel-spring-boot-starter
-
-
- org.apache.camel
- camel-jackson
-
-
- junit
- junit
- test
-
-
- org.codehaus.groovy
- groovy
-
-
- org.spockframework
- spock-core
- test
-
-
- org.spockframework
- spock-spring
- test
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
- org.apache.activemq
- activemq-camel
- test
-
-
- org.apache.activemq
- activemq-pool
- test
-
-
- org.springframework.boot
- spring-boot-starter-web
- test
-
-
- info.solidsoft.spock
- spock-global-unroll
- test
-
-
-
-
-
- org.codehaus.gmavenplus
- gmavenplus-plugin
-
-
-
- testCompile
-
-
-
-
-
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/BookReturned.groovy b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/BookReturned.groovy
deleted file mode 100644
index 72a689a659..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/BookReturned.groovy
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2013-2016 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.springframework.cloud.contract.stubrunner.messaging.camel
-
-import com.fasterxml.jackson.annotation.JsonCreator
-import groovy.transform.CompileStatic
-import groovy.transform.EqualsAndHashCode
-
-@CompileStatic
-@EqualsAndHashCode
-class BookReturned implements Serializable {
- final String bookName
-
- @JsonCreator(mode = JsonCreator.Mode.PROPERTIES)
- BookReturned(String bookName) {
- this.bookName = bookName
- }
-}
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/CamelStubRunnerSpec.groovy b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/CamelStubRunnerSpec.groovy
deleted file mode 100644
index fa6a8a5922..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/CamelStubRunnerSpec.groovy
+++ /dev/null
@@ -1,250 +0,0 @@
-/*
- * Copyright 2013-2016 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.springframework.cloud.contract.stubrunner.messaging.camel
-
-import groovy.json.JsonOutput
-import groovy.json.JsonSlurper
-
-import org.apache.activemq.camel.component.ActiveMQComponent
-import org.apache.activemq.spring.ActiveMQConnectionFactory
-import org.apache.camel.CamelContext
-import org.apache.camel.Exchange
-import org.apache.camel.component.jms.JmsConfiguration
-import org.springframework.beans.factory.annotation.Autowired
-import org.springframework.beans.factory.annotation.Value
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration
-import org.springframework.boot.test.IntegrationTest
-import org.springframework.boot.test.context.SpringBootContextLoader
-import org.springframework.cloud.contract.spec.Contract
-import org.springframework.cloud.contract.stubrunner.StubFinder
-import org.springframework.cloud.contract.stubrunner.spring.AutoConfigureStubRunner
-import org.springframework.context.annotation.Bean
-import org.springframework.context.annotation.ComponentScan
-import org.springframework.context.annotation.Configuration
-import org.springframework.test.context.ContextConfiguration
-
-import spock.lang.Specification
-
-/**
- * @author Marcin Grzejszczak
- */
-@ContextConfiguration(classes = Config, loader = SpringBootContextLoader)
-@IntegrationTest("debug=true")
-@AutoConfigureStubRunner
-class CamelStubRunnerSpec extends Specification {
-
- @Autowired StubFinder stubFinder
- @Autowired CamelContext camelContext
-
- def setup() {
- // ensure that message were taken from the queue
- camelContext.createConsumerTemplate().receive('jms:output', 100)
- }
-
- def 'should download the stub and register a route for it'() {
- when:
- // tag::client_send[]
- camelContext.createProducerTemplate().sendBodyAndHeaders('jms:input', new BookReturned('foo'), [sample: 'header'])
- // end::client_send[]
- then:
- // tag::client_receive[]
- Exchange receivedMessage = camelContext.createConsumerTemplate().receive('jms:output', 5000)
- // end::client_receive[]
- and:
- // tag::client_receive_message[]
- receivedMessage != null
- assertThatBodyContainsBookNameFoo(receivedMessage.in.body)
- receivedMessage.in.headers.get('BOOK-NAME') == 'foo'
- // end::client_receive_message[]
- }
-
- def 'should trigger a message by label'() {
- when:
- // tag::client_trigger[]
- stubFinder.trigger('return_book_1')
- // end::client_trigger[]
- then:
- // tag::client_trigger_receive[]
- Exchange receivedMessage = camelContext.createConsumerTemplate().receive('jms:output', 5000)
- // end::client_trigger_receive[]
- and:
- // tag::client_trigger_message[]
- receivedMessage != null
- assertThatBodyContainsBookNameFoo(receivedMessage.in.body)
- receivedMessage.in.headers.get('BOOK-NAME') == 'foo'
- // end::client_trigger_message[]
- }
-
- def 'should trigger a label for the existing groupId:artifactId'() {
- when:
- // tag::trigger_group_artifact[]
- stubFinder.trigger('org.springframework.cloud.contract.verifier.stubs:camelService', 'return_book_1')
- // end::trigger_group_artifact[]
- then:
- Exchange receivedMessage = camelContext.createConsumerTemplate().receive('jms:output', 5000)
- and:
- receivedMessage != null
- assertThatBodyContainsBookNameFoo(receivedMessage.in.body)
- receivedMessage.in.headers.get('BOOK-NAME') == 'foo'
- }
-
- def 'should trigger a label for the existing artifactId'() {
- when:
- // tag::trigger_artifact[]
- stubFinder.trigger('camelService', 'return_book_1')
- // end::trigger_artifact[]
- then:
- Exchange receivedMessage = camelContext.createConsumerTemplate().receive('jms:output', 5000)
- and:
- receivedMessage != null
- assertThatBodyContainsBookNameFoo(receivedMessage.in.body)
- receivedMessage.in.headers.get('BOOK-NAME') == 'foo'
- }
-
- def 'should throw an exception when missing label is passed'() {
- when:
- stubFinder.trigger('missing label')
- then:
- thrown(IllegalArgumentException)
- }
-
- def 'should throw an exception when missing label and artifactid is passed'() {
- when:
- stubFinder.trigger('some:service', 'return_book_1')
- then:
- thrown(IllegalArgumentException)
- }
-
- def 'should trigger messages by running all triggers'() {
- when:
- // tag::trigger_all[]
- stubFinder.trigger()
- // end::trigger_all[]
- then:
- Exchange receivedMessage = camelContext.createConsumerTemplate().receive('jms:output', 5000)
- and:
- receivedMessage != null
- assertThatBodyContainsBookNameFoo(receivedMessage.in.body)
- receivedMessage.in.headers.get('BOOK-NAME') == 'foo'
- }
-
- def 'should trigger a label with no output message'() {
- when:
- // tag::trigger_no_output[]
- camelContext.createProducerTemplate().sendBodyAndHeaders('jms:delete', new BookReturned('foo'), [sample: 'header'])
- // end::trigger_no_output[]
- then:
- noExceptionThrown()
- }
-
- def 'should not trigger a message that does not match input'() {
- when:
- camelContext.createProducerTemplate().sendBodyAndHeaders('jms:input', new BookReturned('notmatching'), [wrong: 'header_value'])
- then:
- Exchange receivedMessage = camelContext.createConsumerTemplate().receive('jms:output', 100)
- and:
- receivedMessage == null
- }
-
- private boolean assertThatBodyContainsBookNameFoo(Object payload) {
- String objectAsString = payload instanceof String ? payload :
- JsonOutput.toJson(payload)
- def json = new JsonSlurper().parseText(objectAsString)
- return json.bookName == 'foo'
- }
-
- @Configuration
- @ComponentScan
- @EnableAutoConfiguration
- static class Config {
-
- @Bean
- ActiveMQConnectionFactory activeMQConnectionFactory(@Value('${activemq.url:vm://localhost?broker.persistent=false}') String url) {
- return new ActiveMQConnectionFactory(brokerURL: url, trustAllPackages: true)
- }
-
- @Bean
- JmsConfiguration jmsConfiguration(ActiveMQConnectionFactory activeMQConnectionFactory) {
- return new JmsConfiguration(connectionFactory: activeMQConnectionFactory)
- }
-
- @Bean
- ActiveMQComponent activeMQComponent(JmsConfiguration jmsConfiguration) {
- return new ActiveMQComponent(configuration: jmsConfiguration)
- }
- }
-
-
- Contract dsl =
- // tag::sample_dsl[]
- Contract.make {
- label 'return_book_1'
- input {
- triggeredBy('bookReturnedTriggered()')
- }
- outputMessage {
- sentTo('jms:output')
- body('''{ "bookName" : "foo" }''')
- headers {
- header('BOOK-NAME', 'foo')
- }
- }
- }
- // end::sample_dsl[]
-
- Contract dsl2 =
- // tag::sample_dsl_2[]
- Contract.make {
- label 'return_book_2'
- input {
- messageFrom('jms:input')
- messageBody([
- bookName: 'foo'
- ])
- messageHeaders {
- header('sample', 'header')
- }
- }
- outputMessage {
- sentTo('jms:output')
- body([
- bookName: 'foo'
- ])
- headers {
- header('BOOK-NAME', 'foo')
- }
- }
- }
- // end::sample_dsl_2[]
-
- Contract dsl3 =
- // tag::sample_dsl_3[]
- Contract.make {
- label 'delete_book'
- input {
- messageFrom('jms:delete')
- messageBody([
- bookName: 'foo'
- ])
- messageHeaders {
- header('sample', 'header')
- }
- assertThat('bookWasDeleted()')
- }
- }
- // end::sample_dsl_3[]
-}
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelProcessorSpec.groovy b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelProcessorSpec.groovy
deleted file mode 100644
index 279782c65e..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelProcessorSpec.groovy
+++ /dev/null
@@ -1,98 +0,0 @@
-package org.springframework.cloud.contract.stubrunner.messaging.camel
-
-import org.apache.camel.CamelContext
-import org.apache.camel.Exchange
-import org.apache.camel.builder.ExchangeBuilder
-import org.apache.camel.spring.SpringCamelContext
-import org.springframework.cloud.contract.spec.Contract
-import spock.lang.Specification
-
-class StubRunnerCamelProcessorSpec extends Specification {
-
- CamelContext camelContext = new SpringCamelContext()
- Exchange message = ExchangeBuilder.anExchange(camelContext).build()
-
- def noOutputMessageContract = Contract.make {
- label 'return_book_2'
- input {
- messageFrom('bookStorage')
- messageBody([
- bookId: $(consumer(regex('[0-9]+')), producer('123'))
- ])
- messageHeaders {
- header('sample', 'header')
- }
- }
- }
-
- def 'should not process the message if there is no output message'() {
- given:
- StubRunnerCamelProcessor processor = new StubRunnerCamelProcessor(noOutputMessageContract)
- when:
- processor.process(message)
- then:
- noExceptionThrown()
- }
-
- def dsl = Contract.make {
- label 'return_book_2'
- input {
- messageFrom('bookStorage')
- messageBody([
- bookId: $(consumer(regex('[0-9]+')), producer('123'))
- ])
- messageHeaders {
- header('sample', 'header')
- }
- }
- outputMessage {
- sentTo('returnBook')
- body([
- responseId: $(producer(regex('[0-9]+')), consumer('123'))
- ])
- headers {
- header('BOOK-NAME', 'foo')
- }
- }
- }
-
- def 'should process message when it has an output message section'() {
- given:
- StubRunnerCamelProcessor processor = new StubRunnerCamelProcessor(dsl)
- when:
- processor.process(message)
- then:
- message.getIn().getBody(String) == '{"responseId":"123"}'
- }
-
- def dslWithRegexInGString = Contract.make {
- // Human readable description
- description 'Should produce valid sensor data'
- // Label by means of which the output message can be triggered
- label 'sensor1'
- // input to the contract
- input {
- // the contract will be triggered by a method
- triggeredBy('createSensorData()')
- }
- // output message of the contract
- outputMessage {
- // destination to which the output message will be sent
- sentTo 'sensor-data'
- headers {
- header('contentType': 'application/json')
- }
- // the body of the output message
- body("""{"id":"${value(producer(regex('[0-9]+')), consumer('99'))}","temperature":"123.45"}""")
- }
- }
-
- def 'should convert dsl into message with regex in GString'() {
- given:
- StubRunnerCamelProcessor processor = new StubRunnerCamelProcessor(dslWithRegexInGString)
- when:
- processor.process(message)
- then:
- message.getIn().getBody(String) == '''{"id":"99","temperature":"123.45"}'''
- }
-}
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/application.yml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/application.yml
deleted file mode 100644
index 4eef5ea578..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/application.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-stubrunner.stubs.repositoryRoot: classpath:m2repo/repository/
-stubrunner.stubs.ids: org.springframework.cloud.contract.verifier.stubs:camelService
\ No newline at end of file
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/0.0.1-SNAPSHOT/camelService-0.0.1-SNAPSHOT-stubs.jar b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/0.0.1-SNAPSHOT/camelService-0.0.1-SNAPSHOT-stubs.jar
deleted file mode 100644
index b27b155a3e..0000000000
Binary files a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/0.0.1-SNAPSHOT/camelService-0.0.1-SNAPSHOT-stubs.jar and /dev/null differ
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/0.0.1-SNAPSHOT/camelService-0.0.1-SNAPSHOT.pom b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/0.0.1-SNAPSHOT/camelService-0.0.1-SNAPSHOT.pom
deleted file mode 100644
index 0b56465de4..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/0.0.1-SNAPSHOT/camelService-0.0.1-SNAPSHOT.pom
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
-
- 4.0.0
- org.springframework.cloud.contract.verifier.stubs
- camelService
- 0.0.1-SNAPSHOT
- pom
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/0.0.1-SNAPSHOT/maven-metadata-local.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/0.0.1-SNAPSHOT/maven-metadata-local.xml
deleted file mode 100644
index 8ac2715bc8..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/0.0.1-SNAPSHOT/maven-metadata-local.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
- org.springframework.cloud.contract.verifier.stubs
- camelService
- 0.0.1-SNAPSHOT
-
-
- true
-
- 20160409062112
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/maven-metadata-local.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/maven-metadata-local.xml
deleted file mode 100644
index 237fd747a9..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/maven-metadata-local.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
- org.springframework.cloud.contract.verifier.stubs
- camelService
- 0.0.1-SNAPSHOT
-
-
- 0.0.1-SNAPSHOT
-
- 20160409062112
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/maven-metadata.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/maven-metadata.xml
deleted file mode 100644
index 237fd747a9..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-camel/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/camelService/maven-metadata.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
- org.springframework.cloud.contract.verifier.stubs
- camelService
- 0.0.1-SNAPSHOT
-
-
- 0.0.1-SNAPSHOT
-
- 20160409062112
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/.jdk8 b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/.jdk8
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/README.adoc b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/README.adoc
deleted file mode 100644
index ce3b3bff49..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/README.adoc
+++ /dev/null
@@ -1,131 +0,0 @@
-:input_name: input
-:output_name: output
-
-=== Stub Runner Integration
-
-Spring Cloud Contract Verifier Stub Runner's messaging module gives you an easy way to integrate with Spring Integration.
-For the provided artifacts it will automatically download the stubs and register the required
-routes.
-
-==== Adding it to the project
-
-To use it you have to add the following dependency to your project (example for Gradle):
-
-[source,groovy,indent=0]
-----
-testCompile "org.springframework.cloud:stub-runner-integration:${verifierVersion}"
-----
-
-==== Examples
-
-===== Stubs structure
-
-Let us assume that we have the following Maven repository with a deployed stubs for the
-`integrationService` application.
-
-[source,bash,indent=0]
-----
-└── .m2
- └── repository
- └── io
- └── codearte
- └── accurest
- └── stubs
- └── integrationService
- ├── 0.0.1-SNAPSHOT
- │ ├── integrationService-0.0.1-SNAPSHOT.pom
- │ ├── integrationService-0.0.1-SNAPSHOT-stubs.jar
- │ └── maven-metadata-local.xml
- └── maven-metadata-local.xml
-----
-
-And the stubs contain the following structure:
-
-[source,bash,indent=0]
-----
-├── META-INF
-│ └── MANIFEST.MF
-└── repository
- ├── accurest
- │ ├── bookDeleted.groovy
- │ ├── bookReturned1.groovy
- │ └── bookReturned2.groovy
- └── mappings
-----
-
-Let's consider the following contracts (let' number it with *1*):
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/IntegrationStubRunnerSpec.groovy[tags=sample_dsl,indent=0]
-----
-
-and number *2*
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/IntegrationStubRunnerSpec.groovy[tags=sample_dsl_2,indent=0]
-----
-
-and the following Spring Integration Route:
-
-[source,xml]
-----
-include::src/test/resources/integration-context.xml[]
-----
-
-
-===== Scenario 1 (no input message)
-
-So as to trigger a message via the `return_book_1` label we'll use the `StubTigger` interface as follows
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/IntegrationStubRunnerSpec.groovy[tags=client_trigger,indent=0]
-----
-
-Next we'll want to listen to the output of the message sent to `{output_name}`
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/IntegrationStubRunnerSpec.groovy[tags=client_trigger_receive,indent=0]
-----
-
-And the received message would pass the following assertions
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/IntegrationStubRunnerSpec.groovy[tags=client_trigger_message,indent=0]
-----
-
-===== Scenario 2 (output triggered by input)
-
-Since the route is set for you it's enough to just send a message to the `{output_name}` destination.
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/IntegrationStubRunnerSpec.groovy[tags=client_send,indent=0]
-----
-
-Next we'll want to listen to the output of the message sent to `{output_name}`
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/IntegrationStubRunnerSpec.groovy[tags=client_receive,indent=0]
-----
-
-And the received message would pass the following assertions
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/IntegrationStubRunnerSpec.groovy[tags=client_receive_message,indent=0]
-----
-
-===== Scenario 3 (input with no output)
-
-Since the route is set for you it's enough to just send a message to the `{input_name}` destination.
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/IntegrationStubRunnerSpec.groovy[tags=trigger_no_output,indent=0]
-----
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/pom.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/pom.xml
deleted file mode 100644
index e0c5a76850..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/pom.xml
+++ /dev/null
@@ -1,82 +0,0 @@
-
-
- 4.0.0
-
- org.springframework.cloud
- spring-cloud-contract-stub-runner-build
- 1.0.0.BUILD-SNAPSHOT
- ..
-
- spring-cloud-contract-stub-runner-integration
- jar
- Spring Cloud Contract Stub Runner Integration
- Spring Cloud Contract Stub Runner Integration
-
- 1.8
-
-
-
- org.springframework.cloud
- spring-cloud-contract-stub-runner
-
-
- org.springframework.cloud
- spring-cloud-contract-stub-runner-jetty
- test
-
-
- org.springframework.cloud
- spring-cloud-contract-verifier
-
-
- org.springframework.integration
- spring-integration-java-dsl
-
-
- junit
- junit
- test
-
-
- org.spockframework
- spock-core
- test
-
-
- org.spockframework
- spock-spring
- test
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
- org.springframework.boot
- spring-boot-starter-web
- test
-
-
- info.solidsoft.spock
- spock-global-unroll
- test
-
-
-
-
-
- org.codehaus.gmavenplus
- gmavenplus-plugin
-
-
-
- testCompile
-
-
-
-
-
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/BookReturned.groovy b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/BookReturned.groovy
deleted file mode 100644
index bbb47bbb60..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/BookReturned.groovy
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2013-2016 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.springframework.cloud.contract.stubrunner.messaging.integration
-
-import com.fasterxml.jackson.annotation.JsonCreator
-import groovy.transform.CompileStatic
-import groovy.transform.EqualsAndHashCode
-
-@CompileStatic
-@EqualsAndHashCode
-class BookReturned implements Serializable {
- final String bookName
-
- @JsonCreator(mode = JsonCreator.Mode.PROPERTIES)
- BookReturned(String bookName) {
- this.bookName = bookName
- }
-}
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/IntegrationStubRunnerSpec.groovy b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/IntegrationStubRunnerSpec.groovy
deleted file mode 100644
index bfa4a2c3be..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/IntegrationStubRunnerSpec.groovy
+++ /dev/null
@@ -1,229 +0,0 @@
-/*
- * Copyright 2013-2016 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.springframework.cloud.contract.stubrunner.messaging.integration
-
-import groovy.json.JsonOutput
-import groovy.json.JsonSlurper
-
-import java.util.concurrent.TimeUnit
-
-import org.springframework.beans.factory.annotation.Autowired
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration
-import org.springframework.boot.test.context.SpringBootContextLoader
-import org.springframework.cloud.contract.spec.Contract
-import org.springframework.cloud.contract.stubrunner.StubFinder
-import org.springframework.cloud.contract.stubrunner.spring.AutoConfigureStubRunner
-import org.springframework.cloud.contract.verifier.messaging.integration.SpringIntegrationStubMessages
-import org.springframework.context.annotation.ComponentScan
-import org.springframework.context.annotation.Configuration
-import org.springframework.context.annotation.ImportResource
-import org.springframework.messaging.Message
-import org.springframework.test.context.ContextConfiguration
-
-import spock.lang.Specification
-
-/**
- * @author Marcin Grzejszczak
- */
-@Configuration
-@ComponentScan
-@EnableAutoConfiguration
-@ContextConfiguration(classes = IntegrationStubRunnerSpec, loader = SpringBootContextLoader)
-@ImportResource("classpath*:integration-context.xml")
-@AutoConfigureStubRunner
-class IntegrationStubRunnerSpec extends Specification {
-
- @Autowired StubFinder stubFinder
- @Autowired SpringIntegrationStubMessages messaging
-
- def setup() {
- // ensure that message were taken from the queue
- messaging.receive('outputTest', 100, TimeUnit.MILLISECONDS)
- }
-
- def 'should download the stub and register a route for it'() {
- when:
- // tag::client_send[]
- messaging.send(new BookReturned('foo'), [sample: 'header'], 'input')
- // end::client_send[]
- then:
- // tag::client_receive[]
- Message> receivedMessage = messaging.receive('outputTest')
- // end::client_receive[]
- and:
- // tag::client_receive_message[]
- receivedMessage != null
- assertJsons(receivedMessage.payload)
- receivedMessage.headers.get('BOOK-NAME') == 'foo'
- // end::client_receive_message[]
- }
-
- def 'should trigger a message by label'() {
- when:
- // tag::client_trigger[]
- stubFinder.trigger('return_book_1')
- // end::client_trigger[]
- then:
- // tag::client_trigger_receive[]
- Message> receivedMessage = messaging.receive('outputTest')
- // end::client_trigger_receive[]
- and:
- // tag::client_trigger_message[]
- receivedMessage != null
- assertJsons(receivedMessage.payload)
- receivedMessage.headers.get('BOOK-NAME') == 'foo'
- // end::client_trigger_message[]
- }
-
- def 'should trigger a label for the existing groupId:artifactId'() {
- when:
- // tag::trigger_group_artifact[]
- stubFinder.trigger('org.springframework.cloud.contract.verifier.stubs:integrationService', 'return_book_1')
- // end::trigger_group_artifact[]
- then:
- Message> receivedMessage = messaging.receive('outputTest')
- and:
- receivedMessage != null
- assertJsons(receivedMessage.payload)
- receivedMessage.headers.get('BOOK-NAME') == 'foo'
- }
-
- def 'should trigger a label for the existing artifactId'() {
- when:
- // tag::trigger_artifact[]
- stubFinder.trigger('integrationService', 'return_book_1')
- // end::trigger_artifact[]
- then:
- Message> receivedMessage = messaging.receive('outputTest')
- and:
- receivedMessage != null
- assertJsons(receivedMessage.payload)
- receivedMessage.headers.get('BOOK-NAME') == 'foo'
- }
-
- def 'should throw exception when missing label is passed'() {
- when:
- stubFinder.trigger('missing label')
- then:
- thrown(IllegalArgumentException)
- }
-
- def 'should throw exception when missing label and artifactid is passed'() {
- when:
- stubFinder.trigger('some:service', 'return_book_1')
- then:
- thrown(IllegalArgumentException)
- }
-
- def 'should trigger messages by running all triggers'() {
- when:
- // tag::trigger_all[]
- stubFinder.trigger()
- // end::trigger_all[]
- then:
- Message> receivedMessage = messaging.receive('outputTest')
- and:
- receivedMessage != null
- assertJsons(receivedMessage.payload)
- receivedMessage.headers.get('BOOK-NAME') == 'foo'
- }
-
- def 'should trigger a label with no output message'() {
- when:
- // tag::trigger_no_output[]
- messaging.send(new BookReturned('foo'), [sample: 'header'], 'delete')
- // end::trigger_no_output[]
- then:
- noExceptionThrown()
- }
-
- def 'should not trigger a message that does not match input'() {
- when:
- messaging.send(new BookReturned('not_matching'), [wrong: 'header_value'], 'input')
- then:
- Message> receivedMessage = messaging.receive('outputTest', 100, TimeUnit.MILLISECONDS)
- and:
- receivedMessage == null
- }
-
- private boolean assertJsons(Object payload) {
- String objectAsString = payload instanceof String ? payload :
- JsonOutput.toJson(payload)
- def json = new JsonSlurper().parseText(objectAsString)
- return json.bookName == 'foo'
- }
-
- Contract dsl =
- // tag::sample_dsl[]
- Contract.make {
- label 'return_book_1'
- input {
- triggeredBy('bookReturnedTriggered()')
- }
- outputMessage {
- sentTo('output')
- body('''{ "bookName" : "foo" }''')
- headers {
- header('BOOK-NAME', 'foo')
- }
- }
- }
- // end::sample_dsl[]
-
- Contract dsl2 =
- // tag::sample_dsl_2[]
- Contract.make {
- label 'return_book_2'
- input {
- messageFrom('input')
- messageBody([
- bookName: 'foo'
- ])
- messageHeaders {
- header('sample', 'header')
- }
- }
- outputMessage {
- sentTo('output')
- body([
- bookName: 'foo'
- ])
- headers {
- header('BOOK-NAME', 'foo')
- }
- }
- }
- // end::sample_dsl_2[]
-
- Contract dsl3 =
- // tag::sample_dsl_3[]
- Contract.make {
- label 'delete_book'
- input {
- messageFrom('delete')
- messageBody([
- bookName: 'foo'
- ])
- messageHeaders {
- header('sample', 'header')
- }
- assertThat('bookWasDeleted()')
- }
- }
- // end::sample_dsl_3[]
-
-}
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationTransformerSpec.groovy b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationTransformerSpec.groovy
deleted file mode 100644
index 31b4d19ab4..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationTransformerSpec.groovy
+++ /dev/null
@@ -1,95 +0,0 @@
-package org.springframework.cloud.contract.stubrunner.messaging.integration
-
-import org.springframework.cloud.contract.spec.Contract
-import org.springframework.messaging.Message
-import org.springframework.messaging.support.MessageBuilder
-import spock.lang.Specification
-
-class StubRunnerIntegrationTransformerSpec extends Specification {
-
- Message message = MessageBuilder.withPayload("hello").build()
-
- def noOutputMessageContract = Contract.make {
- label 'return_book_2'
- input {
- messageFrom('bookStorage')
- messageBody([
- bookId: $(consumer(regex('[0-9]+')), producer('123'))
- ])
- messageHeaders {
- header('sample', 'header')
- }
- }
- }
-
- def 'should not transform the message if there is no output message'() {
- given:
- StubRunnerIntegrationTransformer transformer = new StubRunnerIntegrationTransformer(noOutputMessageContract)
- when:
- def result = transformer.transform(message)
- then:
- result.is(message)
- }
-
- def dsl = Contract.make {
- label 'return_book_2'
- input {
- messageFrom('bookStorage')
- messageBody([
- bookId: $(consumer(regex('[0-9]+')), producer('123'))
- ])
- messageHeaders {
- header('sample', 'header')
- }
- }
- outputMessage {
- sentTo('returnBook')
- body([
- responseId: $(producer(regex('[0-9]+')), consumer('123'))
- ])
- headers {
- header('BOOK-NAME', 'foo')
- }
- }
- }
-
- def 'should convert dsl into message'() {
- given:
- StubRunnerIntegrationTransformer transformer = new StubRunnerIntegrationTransformer(dsl)
- when:
- def result = transformer.transform(message)
- then:
- result.payload == '{"responseId":"123"}'
- }
-
- def dslWithRegexInGString = Contract.make {
- // Human readable description
- description 'Should produce valid sensor data'
- // Label by means of which the output message can be triggered
- label 'sensor1'
- // input to the contract
- input {
- // the contract will be triggered by a method
- triggeredBy('createSensorData()')
- }
- // output message of the contract
- outputMessage {
- // destination to which the output message will be sent
- sentTo 'sensor-data'
- headers {
- header('contentType': 'application/json')
- }
- // the body of the output message
- body("""{"id":"${value(producer(regex('[0-9]+')), consumer('99'))}","temperature":"123.45"}""")
- }
- }
-
- def 'should convert dsl into message with regex in GString'() {
- given:
- StubRunnerIntegrationTransformer transformer = new StubRunnerIntegrationTransformer(dslWithRegexInGString)
- when:
- def result = transformer.transform(message)
- then:
- result.payload == '''{"id":"99","temperature":"123.45"}'''
- }
-}
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/application.yml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/application.yml
deleted file mode 100644
index 32d7427875..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/application.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-stubrunner.stubs.repositoryRoot: classpath:m2repo/repository/
-stubrunner.stubs.ids: org.springframework.cloud.contract.verifier.stubs:integrationService:0.0.1-SNAPSHOT
\ No newline at end of file
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/integration-context.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/integration-context.xml
deleted file mode 100644
index 1fdb1bb847..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/integration-context.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/0.0.1-SNAPSHOT/integrationService-0.0.1-SNAPSHOT-stubs.jar b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/0.0.1-SNAPSHOT/integrationService-0.0.1-SNAPSHOT-stubs.jar
deleted file mode 100644
index 9cb1d97128..0000000000
Binary files a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/0.0.1-SNAPSHOT/integrationService-0.0.1-SNAPSHOT-stubs.jar and /dev/null differ
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/0.0.1-SNAPSHOT/integrationService-0.0.1-SNAPSHOT.pom b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/0.0.1-SNAPSHOT/integrationService-0.0.1-SNAPSHOT.pom
deleted file mode 100644
index 0581ac022d..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/0.0.1-SNAPSHOT/integrationService-0.0.1-SNAPSHOT.pom
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
-
- 4.0.0
- org.springframework.cloud.contract.verifier.stubs
- integrationService
- 0.0.1-SNAPSHOT
- pom
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/0.0.1-SNAPSHOT/maven-metadata-local.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/0.0.1-SNAPSHOT/maven-metadata-local.xml
deleted file mode 100644
index e6c62c5897..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/0.0.1-SNAPSHOT/maven-metadata-local.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
- org.springframework.cloud.contract.verifier.stubs
- integrationService
- 0.0.1-SNAPSHOT
-
-
- true
-
- 20160409062112
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/maven-metadata-local.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/maven-metadata-local.xml
deleted file mode 100644
index f619bafb54..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/maven-metadata-local.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
- org.springframework.cloud.contract.verifier.stubs
- integrationService
- 0.0.1-SNAPSHOT
-
-
- 0.0.1-SNAPSHOT
-
- 20160409062112
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/maven-metadata.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/maven-metadata.xml
deleted file mode 100644
index f619bafb54..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-integration/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/integrationService/maven-metadata.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
- org.springframework.cloud.contract.verifier.stubs
- integrationService
- 0.0.1-SNAPSHOT
-
-
- 0.0.1-SNAPSHOT
-
- 20160409062112
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/README.adoc b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/README.adoc
deleted file mode 100644
index 2d6a41522c..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/README.adoc
+++ /dev/null
@@ -1,132 +0,0 @@
-=== Stub Runner Stream
-
-Spring Cloud Contract Verifier Stub Runner's messaging module gives you an easy way to integrate with Spring Stream.
-For the provided artifacts it will automatically download the stubs and register the required
-routes.
-
-WARNING: In Stub Runner's integration with Stream the `messageFrom` or `sentTo` Strings are resolved
-first as a `destination` of a channel, and then if there is no such `destination` it's resolved as a
-channel name.
-
-==== Adding it to the project
-
-To use it you have to add the following dependency to your project (example for Gradle):
-
-[source,groovy,indent=0]
-----
-testCompile "org.springframework.cloud:stub-runner-stream:${verifierVersion}"
-----
-
-==== Examples
-
-===== Stubs structure
-
-Let us assume that we have the following Maven repository with a deployed stubs for the
-`streamService` application.
-
-[source,bash,indent=0]
-----
-└── .m2
- └── repository
- └── io
- └── codearte
- └── accurest
- └── stubs
- └── streamService
- ├── 0.0.1-SNAPSHOT
- │ ├── streamService-0.0.1-SNAPSHOT.pom
- │ ├── streamService-0.0.1-SNAPSHOT-stubs.jar
- │ └── maven-metadata-local.xml
- └── maven-metadata-local.xml
-----
-
-And the stubs contain the following structure:
-
-[source,bash,indent=0]
-----
-├── META-INF
-│ └── MANIFEST.MF
-└── repository
- ├── accurest
- │ ├── bookDeleted.groovy
- │ ├── bookReturned1.groovy
- │ └── bookReturned2.groovy
- └── mappings
-----
-
-Let's consider the following contracts (let' number it with *1*):
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StreamStubRunnerSpec.groovy[tags=sample_dsl,indent=0]
-----
-
-and number *2*
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StreamStubRunnerSpec.groovy[tags=sample_dsl_2,indent=0]
-----
-
-and the following Spring configuration:
-
-[source,yaml]
-----
-include::src/test/resources/application.yml[]
-----
-
-
-===== Scenario 1 (no input message)
-
-So as to trigger a message via the `return_book_1` label we'll use the `StubTrigger` interface as follows
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StreamStubRunnerSpec.groovy[tags=client_trigger,indent=0]
-----
-
-Next we'll want to listen to the output of the message sent to a channel whose `destination` is `returnBook`
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StreamStubRunnerSpec.groovy[tags=client_trigger_receive,indent=0]
-----
-
-And the received message would pass the following assertions
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StreamStubRunnerSpec.groovy[tags=client_trigger_message,indent=0]
-----
-
-===== Scenario 2 (output triggered by input)
-
-Since the route is set for you it's enough to just send a message to the `bookStorage` `destination`.
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StreamStubRunnerSpec.groovy[tags=client_send,indent=0]
-----
-
-Next we'll want to listen to the output of the message sent to `returnBook`
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StreamStubRunnerSpec.groovy[tags=client_receive,indent=0]
-----
-
-And the received message would pass the following assertions
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StreamStubRunnerSpec.groovy[tags=client_receive_message,indent=0]
-----
-
-===== Scenario 3 (input with no output)
-
-Since the route is set for you it's enough to just send a message to the `{output_name}` destination.
-
-[source,groovy]
-----
-include::src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StreamStubRunnerSpec.groovy[tags=trigger_no_output,indent=0]
-----
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/pom.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/pom.xml
deleted file mode 100644
index c6b411380b..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/pom.xml
+++ /dev/null
@@ -1,85 +0,0 @@
-
-
- 4.0.0
-
- org.springframework.cloud
- spring-cloud-contract-stub-runner-build
- 1.0.0.BUILD-SNAPSHOT
- ..
-
- spring-cloud-contract-stub-runner-stream
- jar
- Spring Cloud Contract Stub Runner Stream
- Spring Cloud Contract Stub Runner Stream
-
-
- org.springframework.cloud
- spring-cloud-starter-stream-rabbit
-
-
- org.springframework.cloud
- spring-cloud-contract-stub-runner
- test
-
-
- org.springframework.cloud
- spring-cloud-contract-stub-runner-jetty
- test
-
-
- org.springframework.cloud
- spring-cloud-contract-verifier
- test
-
-
- org.springframework.cloud
- spring-cloud-stream-test-support
- test
-
-
- org.springframework.integration
- spring-integration-java-dsl
-
-
- junit
- junit
- test
-
-
- org.spockframework
- spock-core
- test
-
-
- org.spockframework
- spock-spring
- test
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
- info.solidsoft.spock
- spock-global-unroll
- test
-
-
-
-
-
- org.codehaus.gmavenplus
- gmavenplus-plugin
-
-
-
- testCompile
-
-
-
-
-
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/BookReturned.groovy b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/BookReturned.groovy
deleted file mode 100644
index 49dea202eb..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/BookReturned.groovy
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2013-2016 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.springframework.cloud.contract.stubrunner.messaging.stream
-
-import com.fasterxml.jackson.annotation.JsonCreator
-import groovy.transform.CompileStatic
-import groovy.transform.EqualsAndHashCode
-
-@CompileStatic
-@EqualsAndHashCode
-class BookReturned implements Serializable {
- final String bookName
-
- @JsonCreator(mode = JsonCreator.Mode.PROPERTIES)
- BookReturned(String bookName) {
- this.bookName = bookName
- }
-}
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StreamStubRunnerSpec.groovy b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StreamStubRunnerSpec.groovy
deleted file mode 100644
index 28564fa7be..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StreamStubRunnerSpec.groovy
+++ /dev/null
@@ -1,227 +0,0 @@
-/*
- * Copyright 2013-2016 the original author or authors.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.springframework.cloud.contract.stubrunner.messaging.stream
-
-import groovy.json.JsonOutput
-import groovy.json.JsonSlurper
-
-import java.util.concurrent.TimeUnit
-
-import org.springframework.beans.factory.annotation.Autowired
-import org.springframework.boot.autoconfigure.EnableAutoConfiguration
-import org.springframework.boot.test.IntegrationTest;
-import org.springframework.boot.test.context.SpringBootContextLoader
-import org.springframework.cloud.contract.spec.Contract
-import org.springframework.cloud.contract.stubrunner.StubFinder
-import org.springframework.cloud.contract.stubrunner.spring.AutoConfigureStubRunner
-import org.springframework.cloud.contract.verifier.messaging.MessageVerifier
-import org.springframework.cloud.contract.verifier.messaging.boot.AutoConfigureMessageVerifier;
-import org.springframework.cloud.stream.annotation.EnableBinding
-import org.springframework.cloud.stream.messaging.Sink
-import org.springframework.cloud.stream.messaging.Source
-import org.springframework.context.annotation.ComponentScan
-import org.springframework.context.annotation.Configuration
-import org.springframework.messaging.Message
-import org.springframework.test.context.ContextConfiguration
-
-import spock.lang.Specification
-
-/**
- * @author Marcin Grzejszczak
- */
-@ContextConfiguration(classes = Config, loader = SpringBootContextLoader)
-@IntegrationTest("debug=true")
-@AutoConfigureStubRunner
-@AutoConfigureMessageVerifier
-class StreamStubRunnerSpec extends Specification {
-
- @Autowired StubFinder stubFinder
- @Autowired MessageVerifier> messaging
-
- def setup() {
- // ensure that message were taken from the queue
- messaging.receive('returnBook', 100, TimeUnit.MILLISECONDS)
- }
-
- def 'should download the stub and register a route for it'() {
- when:
- // tag::client_send[]
- messaging.send(new BookReturned('foo'), [sample: 'header'], 'bookStorage')
- // end::client_send[]
- then:
- // tag::client_receive[]
- Message> receivedMessage = messaging.receive('returnBook')
- // end::client_receive[]
- and:
- // tag::client_receive_message[]
- receivedMessage != null
- assertJsons(receivedMessage.payload)
- receivedMessage.headers.get('BOOK-NAME') == 'foo'
- // end::client_receive_message[]
- }
-
- def 'should trigger a message by label'() {
- when:
- // tag::client_trigger[]
- stubFinder.trigger('return_book_1')
- // end::client_trigger[]
- then:
- // tag::client_trigger_receive[]
- Message> receivedMessage = messaging.receive('returnBook')
- // end::client_trigger_receive[]
- and:
- // tag::client_trigger_message[]
- receivedMessage != null
- assertJsons(receivedMessage.payload)
- receivedMessage.headers.get('BOOK-NAME') == 'foo'
- // end::client_trigger_message[]
- }
-
- def 'should trigger a label for the existing groupId:artifactId'() {
- when:
- // tag::trigger_group_artifact[]
- stubFinder.trigger('org.springframework.cloud.contract.verifier.stubs:streamService', 'return_book_1')
- // end::trigger_group_artifact[]
- then:
- Message> receivedMessage = messaging.receive('returnBook')
- and:
- receivedMessage != null
- assertJsons(receivedMessage.payload)
- receivedMessage.headers.get('BOOK-NAME') == 'foo'
- }
-
- def 'should trigger a label for the existing artifactId'() {
- when:
- // tag::trigger_artifact[]
- stubFinder.trigger('streamService', 'return_book_1')
- // end::trigger_artifact[]
- then:
- Message> receivedMessage = messaging.receive('returnBook')
- and:
- receivedMessage != null
- assertJsons(receivedMessage.payload)
- receivedMessage.headers.get('BOOK-NAME') == 'foo'
- }
-
- def 'should throw exception when missing label is passed'() {
- when:
- stubFinder.trigger('missing label')
- then:
- thrown(IllegalArgumentException)
- }
-
- def 'should throw exception when missing label and artifactid is passed'() {
- when:
- stubFinder.trigger('some:service', 'return_book_1')
- then:
- thrown(IllegalArgumentException)
- }
-
- def 'should trigger messages by running all triggers'() {
- when:
- // tag::trigger_all[]
- stubFinder.trigger()
- // end::trigger_all[]
- then:
- Message> receivedMessage = messaging.receive('returnBook')
- and:
- receivedMessage != null
- assertJsons(receivedMessage.payload)
- receivedMessage.headers.get('BOOK-NAME') == 'foo'
- }
-
- def 'should trigger a label with no output message'() {
- when:
- // tag::trigger_no_output[]
- messaging.send(new BookReturned('foo'), [sample: 'header'], 'delete')
- // end::trigger_no_output[]
- then:
- noExceptionThrown()
- }
-
- def 'should not trigger a message that does not match input'() {
- when:
- messaging.send(new BookReturned('not_matching'), [wrong: 'header_value'], 'bookStorage')
- then:
- Message> receivedMessage = messaging.receive('returnBook', 100, TimeUnit.MILLISECONDS)
- and:
- receivedMessage == null
- }
-
- private boolean assertJsons(Object payload) {
- String objectAsString = payload instanceof String ? payload :
- JsonOutput.toJson(payload)
- def json = new JsonSlurper().parseText(objectAsString)
- return json.bookName == 'foo'
- }
-
- Contract dsl =
- // tag::sample_dsl[]
- Contract.make {
- label 'return_book_1'
- input { triggeredBy('bookReturnedTriggered()') }
- outputMessage {
- sentTo('returnBook')
- body('''{ "bookName" : "foo" }''')
- headers { header('BOOK-NAME', 'foo') }
- }
- }
- // end::sample_dsl[]
-
- Contract dsl2 =
- // tag::sample_dsl_2[]
- Contract.make {
- label 'return_book_2'
- input {
- messageFrom('bookStorage')
- messageBody([
- bookName: 'foo'
- ])
- messageHeaders { header('sample', 'header') }
- }
- outputMessage {
- sentTo('returnBook')
- body([
- bookName: 'foo'
- ])
- headers { header('BOOK-NAME', 'foo') }
- }
- }
- // end::sample_dsl_2[]
-
- Contract dsl3 =
- // tag::sample_dsl_3[]
- Contract.make {
- label 'delete_book'
- input {
- messageFrom('delete')
- messageBody([
- bookName: 'foo'
- ])
- messageHeaders { header('sample', 'header') }
- assertThat('bookWasDeleted()')
- }
- }
- // end::sample_dsl_3[]
-
-
- @EnableBinding([Sink, Source])
- @Configuration
- @EnableAutoConfiguration
- protected static class Config {}
-
-}
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamTransformerSpec.groovy b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamTransformerSpec.groovy
deleted file mode 100644
index a948936dad..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/groovy/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamTransformerSpec.groovy
+++ /dev/null
@@ -1,132 +0,0 @@
-package org.springframework.cloud.contract.stubrunner.messaging.stream
-
-import org.springframework.cloud.contract.spec.Contract
-import org.springframework.messaging.Message
-import org.springframework.messaging.support.MessageBuilder
-import spock.lang.Specification
-
-class StubRunnerStreamTransformerSpec extends Specification {
-
- Message message = MessageBuilder.withPayload("hello").build()
-
- def noOutputMessageContract = Contract.make {
- label 'return_book_2'
- input {
- messageFrom('bookStorage')
- messageBody([
- bookId: $(consumer(regex('[0-9]+')), producer('123'))
- ])
- messageHeaders {
- header('sample', 'header')
- }
- }
- }
-
- def 'should not transform the message if there is no output message'() {
- given:
- StubRunnerStreamTransformer streamTransformer = new StubRunnerStreamTransformer(noOutputMessageContract)
- when:
- def result = streamTransformer.transform(message)
- then:
- result.is(message)
- }
-
- def dsl = Contract.make {
- label 'return_book_2'
- input {
- messageFrom('bookStorage')
- messageBody([
- bookId: $(consumer(regex('[0-9]+')), producer('123'))
- ])
- messageHeaders {
- header('sample', 'header')
- }
- }
- outputMessage {
- sentTo('returnBook')
- body([
- responseId: $(producer(regex('[0-9]+')), consumer('123'))
- ])
- headers {
- header('BOOK-NAME', 'foo')
- }
- }
- }
-
- def 'should convert dsl into message'() {
- given:
- StubRunnerStreamTransformer streamTransformer = new StubRunnerStreamTransformer(dsl)
- when:
- def result = streamTransformer.transform(message)
- then:
- result.payload == '{"responseId":"123"}'
- }
-
- def dslWithRegexInGString = Contract.make {
- // Human readable description
- description 'Should produce valid sensor data'
- // Label by means of which the output message can be triggered
- label 'sensor1'
- // input to the contract
- input {
- // the contract will be triggered by a method
- triggeredBy('createSensorData()')
- }
- // output message of the contract
- outputMessage {
- // destination to which the output message will be sent
- sentTo 'sensor-data'
- headers {
- header('contentType': 'application/json')
- }
- // the body of the output message
- body("""{"id":"${value(producer(regex('[0-9]+')), consumer('99'))}","temperature":"123.45"}""")
- }
- }
-
- def 'should convert dsl into message with regex in GString'() {
- given:
- StubRunnerStreamTransformer streamTransformer = new StubRunnerStreamTransformer(dslWithRegexInGString)
- when:
- def result = streamTransformer.transform(message)
- then:
- result.payload == '''{"id":"99","temperature":"123.45"}'''
- }
-
- def 'should parse dsl without DslProperty'() {
- given:
- Contract contract = Contract.make {
- // Human readable description
- description 'Sends an order message'
- // Label by means of which the output message can be triggered
- label 'send_order'
- // input to the contract
- input {
- // the contract will be triggered by a method
- triggeredBy('orderTrigger()')
- }
- // output message of the contract
- outputMessage {
- // destination to which the output message will be sent
- sentTo('orders')
- // any headers for the output message
- headers {
- header('contentType': 'application/json')
- }
- // the body of the output message
- body(
- orderId: value(
- consumer('40058c70-891c-4176-a033-f70bad0c5f77'),
- producer(regex('([0-9|a-f]*-*)*'))),
- description: "This is the order description"
- )
- }
- }
- StubRunnerStreamTransformer streamTransformer = new StubRunnerStreamTransformer(contract)
- when:
- def result = streamTransformer.transform(message)
- then:
- result.payload == '''{"orderId":"40058c70-891c-4176-a033-f70bad0c5f77","description":"This is the order description"}'''
- }
-
-}
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/application.yml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/application.yml
deleted file mode 100644
index baaaa1d38e..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/application.yml
+++ /dev/null
@@ -1,11 +0,0 @@
-stubrunner.stubs.repositoryRoot: classpath:m2repo/repository/
-stubrunner.stubs.ids: org.springframework.cloud.contract.verifier.stubs:streamService:0.0.1-SNAPSHOT:stubs
-
-spring:
- cloud:
- stream:
- bindings:
- output:
- destination: returnBook
- input:
- destination: bookStorage
\ No newline at end of file
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/0.0.1-SNAPSHOT/maven-metadata-local.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/0.0.1-SNAPSHOT/maven-metadata-local.xml
deleted file mode 100644
index f14e885df3..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/0.0.1-SNAPSHOT/maven-metadata-local.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
- org.springframework.cloud.contract.verifier.stubs
- streamService
- 0.0.1-SNAPSHOT
-
-
- true
-
- 20160409062112
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/0.0.1-SNAPSHOT/streamService-0.0.1-SNAPSHOT-stubs.jar b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/0.0.1-SNAPSHOT/streamService-0.0.1-SNAPSHOT-stubs.jar
deleted file mode 100644
index b3daab26c4..0000000000
Binary files a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/0.0.1-SNAPSHOT/streamService-0.0.1-SNAPSHOT-stubs.jar and /dev/null differ
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/0.0.1-SNAPSHOT/streamService-0.0.1-SNAPSHOT.pom b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/0.0.1-SNAPSHOT/streamService-0.0.1-SNAPSHOT.pom
deleted file mode 100644
index 8613d57be0..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/0.0.1-SNAPSHOT/streamService-0.0.1-SNAPSHOT.pom
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
-
- 4.0.0
- org.springframework.cloud.contract.verifier.stubs
- streamService
- 0.0.1-SNAPSHOT
- pom
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/maven-metadata-local.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/maven-metadata-local.xml
deleted file mode 100644
index 001cf26899..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/maven-metadata-local.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
- org.springframework.cloud.contract.verifier.stubs
- streamService
- 0.0.1-SNAPSHOT
-
-
- 0.0.1-SNAPSHOT
-
- 20160409062112
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/maven-metadata.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/maven-metadata.xml
deleted file mode 100644
index 001cf26899..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner-stream/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/streamService/maven-metadata.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
- org.springframework.cloud.contract.verifier.stubs
- streamService
- 0.0.1-SNAPSHOT
-
-
- 0.0.1-SNAPSHOT
-
- 20160409062112
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/pom.xml b/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/pom.xml
deleted file mode 100644
index 564eeb21f9..0000000000
--- a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/pom.xml
+++ /dev/null
@@ -1,160 +0,0 @@
-
-
- 4.0.0
-
- org.springframework.cloud
- spring-cloud-contract-stub-runner-build
- 1.0.0.BUILD-SNAPSHOT
- ..
-
- spring-cloud-contract-stub-runner
- jar
- Spring Cloud Contract Stub Runner
- Spring Cloud Contract Stub Runner
-
-
- org.springframework.cloud
- spring-cloud-contract-verifier
-
-
- org.springframework.cloud
- spring-cloud-stream-test-support
- true
-
-
- org.springframework.cloud
- spring-cloud-contract-wiremock
- true
-
-
- org.springframework.cloud
- spring-cloud-starter
- true
-
-
- org.springframework.cloud
- spring-cloud-starter-ribbon
- true
-
-
- org.springframework.cloud
- spring-cloud-contract-verifier
-
-
- org.springframework.cloud
- spring-cloud-contract-spec
-
-
- org.springframework.boot
- spring-boot-configuration-processor
- true
-
-
- org.springframework
- spring-core
-
-
- args4j
- args4j
-
-
- org.apache.camel
- camel-spring-boot-starter
- true
-
-
- org.apache.camel
- camel-jackson
- true
-
-
- org.springframework.integration
- spring-integration-java-dsl
- true
-
-
- org.eclipse.aether
- aether-api
-
-
- org.eclipse.aether
- aether-impl
-
-
- org.eclipse.aether
- aether-transport-file
-
-
- org.eclipse.aether
- aether-transport-http
-
-
- org.eclipse.aether
- aether-connector-basic
-
-
- org.apache.maven
- maven-aether-provider
-
-
- junit
- junit
-
-
- cglib
- cglib
- test
-
-
- com.jayway.restassured
- spring-mock-mvc
- test
-
-
- org.spockframework
- spock-spring
- test
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
- org.springframework.boot
- spring-boot-starter-web
- test
-
-
- info.solidsoft.spock
- spock-global-unroll
- test
-
-
- org.springframework.cloud
- spring-cloud-starter-zookeeper-discovery
- test
-
-
- org.apache.curator
- curator-test
- test
-
-
-
-
-
- org.codehaus.gmavenplus
- gmavenplus-plugin
-
-
-
- testCompile
-
-
-
-
-
-
-
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/AetherFactories.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/AetherFactories.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/AetherFactories.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/AetherFactories.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/AetherStubDownloader.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/AetherStubDownloader.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/AetherStubDownloader.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/AetherStubDownloader.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/Arguments.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/Arguments.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/Arguments.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/Arguments.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/AvailablePortScanner.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/AvailablePortScanner.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/AvailablePortScanner.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/AvailablePortScanner.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/BatchStubRunner.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/BatchStubRunner.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/BatchStubRunner.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/BatchStubRunner.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/BatchStubRunnerFactory.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/BatchStubRunnerFactory.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/BatchStubRunnerFactory.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/BatchStubRunnerFactory.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/GroovyDslWrapper.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/GroovyDslWrapper.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/GroovyDslWrapper.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/GroovyDslWrapper.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/MessageNotMatchingException.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/MessageNotMatchingException.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/MessageNotMatchingException.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/MessageNotMatchingException.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/RunningStubs.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/RunningStubs.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/RunningStubs.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/RunningStubs.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubConfiguration.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubConfiguration.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubConfiguration.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubConfiguration.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubData.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubData.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubData.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubData.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubDownloader.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubDownloader.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubDownloader.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubDownloader.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubFinder.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubFinder.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubFinder.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubFinder.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRepository.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRepository.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRepository.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRepository.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunner.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunner.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunner.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunner.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerExecutor.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerExecutor.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerExecutor.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerExecutor.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerFactory.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerFactory.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerFactory.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerFactory.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerMain.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerMain.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerMain.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerMain.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerOptions.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerOptions.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerOptions.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerOptions.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerOptionsBuilder.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerOptionsBuilder.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerOptionsBuilder.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunnerOptionsBuilder.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunning.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunning.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunning.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubRunning.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubServer.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubServer.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubServer.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubServer.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubTrigger.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubTrigger.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubTrigger.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/StubTrigger.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/WiremockMappingDescriptor.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/WiremockMappingDescriptor.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/WiremockMappingDescriptor.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/WiremockMappingDescriptor.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRule.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRule.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRule.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRule.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelConfiguration.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelConfiguration.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelConfiguration.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelConfiguration.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelPredicate.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelPredicate.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelPredicate.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelPredicate.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelProcessor.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelProcessor.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelProcessor.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/camel/StubRunnerCamelProcessor.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationConfiguration.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationConfiguration.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationConfiguration.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationConfiguration.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationMessageSelector.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationMessageSelector.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationMessageSelector.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationMessageSelector.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationTransformer.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationTransformer.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationTransformer.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/integration/StubRunnerIntegrationTransformer.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamConfiguration.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamConfiguration.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamConfiguration.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamConfiguration.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamMessageSelector.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamMessageSelector.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamMessageSelector.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamMessageSelector.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamTransformer.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamTransformer.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamTransformer.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/messaging/stream/StubRunnerStreamTransformer.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/EnableStubRunnerServer.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/EnableStubRunnerServer.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/EnableStubRunnerServer.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/EnableStubRunnerServer.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/HttpStubsController.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/HttpStubsController.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/HttpStubsController.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/HttpStubsController.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/StubRunnerBackupAutoConfiguration.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/StubRunnerBackupAutoConfiguration.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/StubRunnerBackupAutoConfiguration.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/StubRunnerBackupAutoConfiguration.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/StubRunnerBoot.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/StubRunnerBoot.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/StubRunnerBoot.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/StubRunnerBoot.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/TriggerController.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/TriggerController.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/TriggerController.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/server/TriggerController.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/AutoConfigureStubRunner.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/AutoConfigureStubRunner.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/AutoConfigureStubRunner.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/AutoConfigureStubRunner.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/StubRunnerConfiguration.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/StubRunnerConfiguration.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/StubRunnerConfiguration.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/StubRunnerConfiguration.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/StubRunnerProperties.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/StubRunnerProperties.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/StubRunnerProperties.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/StubRunnerProperties.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubMapperProperties.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubMapperProperties.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubMapperProperties.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubMapperProperties.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerDiscoveryClient.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerDiscoveryClient.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerDiscoveryClient.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerDiscoveryClient.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerServiceInstance.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerServiceInstance.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerServiceInstance.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerServiceInstance.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerSpringCloudAutoConfiguration.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerSpringCloudAutoConfiguration.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerSpringCloudAutoConfiguration.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerSpringCloudAutoConfiguration.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonAutoConfiguration.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonAutoConfiguration.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonAutoConfiguration.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonAutoConfiguration.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonBeanPostProcessor.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonBeanPostProcessor.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonBeanPostProcessor.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonBeanPostProcessor.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonConfiguration.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonConfiguration.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonConfiguration.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonConfiguration.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonServerList.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonServerList.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonServerList.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/spring/cloud/ribbon/StubRunnerRibbonServerList.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/util/StringUtils.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/util/StringUtils.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/util/StringUtils.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/util/StringUtils.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/util/StubsParser.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/util/StubsParser.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/util/StubsParser.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/util/StubsParser.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/util/ZipCategory.java b/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/util/ZipCategory.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/util/ZipCategory.java
rename to spring-cloud-contract-stub-runner/src/main/java/org/springframework/cloud/contract/stubrunner/util/ZipCategory.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/resources/META-INF/spring.factories b/spring-cloud-contract-stub-runner/src/main/resources/META-INF/spring.factories
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/main/resources/META-INF/spring.factories
rename to spring-cloud-contract-stub-runner/src/main/resources/META-INF/spring.factories
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/AdhocTestSuite.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/AdhocTestSuite.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/AdhocTestSuite.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/AdhocTestSuite.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/AvailablePortScannerSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/AvailablePortScannerSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/AvailablePortScannerSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/AvailablePortScannerSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/BatchStubRunnerSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/BatchStubRunnerSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/BatchStubRunnerSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/BatchStubRunnerSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/MappingDescriptorSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/MappingDescriptorSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/MappingDescriptorSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/MappingDescriptorSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/RunningStubsSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/RunningStubsSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/RunningStubsSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/RunningStubsSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubConfigurationSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubConfigurationSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubConfigurationSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubConfigurationSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRepositorySpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRepositorySpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRepositorySpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRepositorySpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerExecutorSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerExecutorSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerExecutorSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerExecutorSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerFactorySpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerFactorySpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerFactorySpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerFactorySpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerOptionsBuilderSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerOptionsBuilderSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerOptionsBuilderSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerOptionsBuilderSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubRunnerSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubServerSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubServerSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubServerSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/StubServerSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRuleCustomPortJUnitTest.java b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRuleCustomPortJUnitTest.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRuleCustomPortJUnitTest.java
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRuleCustomPortJUnitTest.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRuleJUnitTest.java b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRuleJUnitTest.java
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRuleJUnitTest.java
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRuleJUnitTest.java
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRuleSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRuleSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRuleSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/junit/StubRunnerRuleSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/server/StubRunnerBootSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/server/StubRunnerBootSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/server/StubRunnerBootSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/server/StubRunnerBootSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/spring/StubRunnerConfigurationSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/spring/StubRunnerConfigurationSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/spring/StubRunnerConfigurationSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/spring/StubRunnerConfigurationSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerSpringCloudAutoConfigurationSpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerSpringCloudAutoConfigurationSpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerSpringCloudAutoConfigurationSpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/spring/cloud/StubRunnerSpringCloudAutoConfigurationSpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/util/ZipCategorySpec.groovy b/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/util/ZipCategorySpec.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/util/ZipCategorySpec.groovy
rename to spring-cloud-contract-stub-runner/src/test/groovy/org/springframework/cloud/contract/stubrunner/util/ZipCategorySpec.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/mappings/spring/cloud/bar/bar.json b/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/mappings/spring/cloud/bar/bar.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/mappings/spring/cloud/bar/bar.json
rename to spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/mappings/spring/cloud/bar/bar.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/mappings/spring/cloud/foo/bar/foobar.json b/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/mappings/spring/cloud/foo/bar/foobar.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/mappings/spring/cloud/foo/bar/foobar.json
rename to spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/mappings/spring/cloud/foo/bar/foobar.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/mappings/spring/cloud/foo/foo.json b/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/mappings/spring/cloud/foo/foo.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/mappings/spring/cloud/foo/foo.json
rename to spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/mappings/spring/cloud/foo/foo.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/projects/brokers/brokers.json b/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/projects/brokers/brokers.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/projects/brokers/brokers.json
rename to spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/projects/brokers/brokers.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/projects/brokers/nested/anotherDescriptor.json b/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/projects/brokers/nested/anotherDescriptor.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/projects/brokers/nested/anotherDescriptor.json
rename to spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/projects/brokers/nested/anotherDescriptor.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/projects/descriptor.json b/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/projects/descriptor.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/projects/descriptor.json
rename to spring-cloud-contract-stub-runner/src/test/resources/anotherRepository/projects/descriptor.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/application.yml b/spring-cloud-contract-stub-runner/src/test/resources/application.yml
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/application.yml
rename to spring-cloud-contract-stub-runner/src/test/resources/application.yml
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/emptyrepo/.gitkeep b/spring-cloud-contract-stub-runner/src/test/resources/emptyrepo/.gitkeep
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/emptyrepo/.gitkeep
rename to spring-cloud-contract-stub-runner/src/test/resources/emptyrepo/.gitkeep
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/file.zip b/spring-cloud-contract-stub-runner/src/test/resources/file.zip
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/file.zip
rename to spring-cloud-contract-stub-runner/src/test/resources/file.zip
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/logback.xml b/spring-cloud-contract-stub-runner/src/test/resources/logback.xml
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/logback.xml
rename to spring-cloud-contract-stub-runner/src/test/resources/logback.xml
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/bootService/0.0.1-SNAPSHOT/bootService-0.0.1-SNAPSHOT-stubs.jar b/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/bootService/0.0.1-SNAPSHOT/bootService-0.0.1-SNAPSHOT-stubs.jar
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/bootService/0.0.1-SNAPSHOT/bootService-0.0.1-SNAPSHOT-stubs.jar
rename to spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/bootService/0.0.1-SNAPSHOT/bootService-0.0.1-SNAPSHOT-stubs.jar
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/bootService/0.0.1-SNAPSHOT/bootService-0.0.1-SNAPSHOT.pom b/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/bootService/0.0.1-SNAPSHOT/bootService-0.0.1-SNAPSHOT.pom
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/bootService/0.0.1-SNAPSHOT/bootService-0.0.1-SNAPSHOT.pom
rename to spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/bootService/0.0.1-SNAPSHOT/bootService-0.0.1-SNAPSHOT.pom
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/bootService/maven-metadata.xml b/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/bootService/maven-metadata.xml
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/bootService/maven-metadata.xml
rename to spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/bootService/maven-metadata.xml
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/fraudDetectionServer/0.0.1-SNAPSHOT/fraudDetectionServer-0.0.1-SNAPSHOT-stubs.jar b/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/fraudDetectionServer/0.0.1-SNAPSHOT/fraudDetectionServer-0.0.1-SNAPSHOT-stubs.jar
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/fraudDetectionServer/0.0.1-SNAPSHOT/fraudDetectionServer-0.0.1-SNAPSHOT-stubs.jar
rename to spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/fraudDetectionServer/0.0.1-SNAPSHOT/fraudDetectionServer-0.0.1-SNAPSHOT-stubs.jar
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/fraudDetectionServer/0.0.1-SNAPSHOT/fraudDetectionServer-0.0.1-SNAPSHOT.pom b/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/fraudDetectionServer/0.0.1-SNAPSHOT/fraudDetectionServer-0.0.1-SNAPSHOT.pom
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/fraudDetectionServer/0.0.1-SNAPSHOT/fraudDetectionServer-0.0.1-SNAPSHOT.pom
rename to spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/fraudDetectionServer/0.0.1-SNAPSHOT/fraudDetectionServer-0.0.1-SNAPSHOT.pom
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/fraudDetectionServer/maven-metadata.xml b/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/fraudDetectionServer/maven-metadata.xml
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/fraudDetectionServer/maven-metadata.xml
rename to spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/fraudDetectionServer/maven-metadata.xml
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/loanIssuance/0.0.1-SNAPSHOT/loanIssuance-0.0.1-SNAPSHOT-stubs.jar b/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/loanIssuance/0.0.1-SNAPSHOT/loanIssuance-0.0.1-SNAPSHOT-stubs.jar
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/loanIssuance/0.0.1-SNAPSHOT/loanIssuance-0.0.1-SNAPSHOT-stubs.jar
rename to spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/loanIssuance/0.0.1-SNAPSHOT/loanIssuance-0.0.1-SNAPSHOT-stubs.jar
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/loanIssuance/0.0.1-SNAPSHOT/loanIssuance-0.0.1-SNAPSHOT.pom b/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/loanIssuance/0.0.1-SNAPSHOT/loanIssuance-0.0.1-SNAPSHOT.pom
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/loanIssuance/0.0.1-SNAPSHOT/loanIssuance-0.0.1-SNAPSHOT.pom
rename to spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/loanIssuance/0.0.1-SNAPSHOT/loanIssuance-0.0.1-SNAPSHOT.pom
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/loanIssuance/maven-metadata.xml b/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/loanIssuance/maven-metadata.xml
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/loanIssuance/maven-metadata.xml
rename to spring-cloud-contract-stub-runner/src/test/resources/m2repo/repository/org/springframework/cloud/contract/verifier/stubs/loanIssuance/maven-metadata.xml
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/contracts/contract1.groovy b/spring-cloud-contract-stub-runner/src/test/resources/repository/contracts/contract1.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/contracts/contract1.groovy
rename to spring-cloud-contract-stub-runner/src/test/resources/repository/contracts/contract1.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/contracts/contract2.groovy b/spring-cloud-contract-stub-runner/src/test/resources/repository/contracts/contract2.groovy
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/contracts/contract2.groovy
rename to spring-cloud-contract-stub-runner/src/test/resources/repository/contracts/contract2.groovy
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/lv/spring/cloud/bye/lv_bye.json b/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/lv/spring/cloud/bye/lv_bye.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/lv/spring/cloud/bye/lv_bye.json
rename to spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/lv/spring/cloud/bye/lv_bye.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/pl/spring/cloud/bye/pl_bye.json b/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/pl/spring/cloud/bye/pl_bye.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/pl/spring/cloud/bye/pl_bye.json
rename to spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/pl/spring/cloud/bye/pl_bye.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/pl/spring/cloud/bye/pl_overridden_bye.json b/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/pl/spring/cloud/bye/pl_overridden_bye.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/pl/spring/cloud/bye/pl_overridden_bye.json
rename to spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/pl/spring/cloud/bye/pl_overridden_bye.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/bye/admin/admin.json b/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/bye/admin/admin.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/bye/admin/admin.json
rename to spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/bye/admin/admin.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/bye/bye.json b/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/bye/bye.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/bye/bye.json
rename to spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/bye/bye.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/hello/README.md b/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/hello/README.md
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/hello/README.md
rename to spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/hello/README.md
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/hello/admin/admin.json b/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/hello/admin/admin.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/hello/admin/admin.json
rename to spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/hello/admin/admin.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/hello/hello.json b/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/hello/hello.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/hello/hello.json
rename to spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/hello/hello.json
diff --git a/spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/ping/ping.json b/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/ping/ping.json
similarity index 100%
rename from spring-cloud-contract-stub-runner/spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/ping/ping.json
rename to spring-cloud-contract-stub-runner/src/test/resources/repository/mappings/spring/cloud/ping/ping.json