Add messaging automatically to stub runner autoconfig

This commit is contained in:
Dave Syer
2016-07-18 10:54:45 +01:00
parent ac873f9c82
commit 472c6d3882
6 changed files with 9 additions and 8 deletions

View File

@@ -19,6 +19,7 @@ package com.example
import javax.inject.Inject
import org.springframework.beans.factory.annotation.Autowired
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.verifier.messaging.ContractVerifierMessage
@@ -39,6 +40,7 @@ import com.toomuchcoding.jsonassert.JsonAssertion
// Context configuration would end up in base class
@ContextConfiguration(classes = [StreamMessagingApplication], loader = SpringBootContextLoader)
@DirtiesContext
@IntegrationTest("debug=true")
@AutoConfigureContractVerifierMessaging
public class StreamMessagingApplicationSpec extends Specification {

View File

@@ -18,6 +18,7 @@ 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
@@ -26,16 +27,16 @@ 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.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.boot.AutoConfigureContractVerifierMessaging;
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
/**
@@ -44,7 +45,6 @@ import spock.lang.Specification
@ContextConfiguration(classes = Config, loader = SpringBootContextLoader)
@IntegrationTest("debug=true")
@AutoConfigureStubRunner
@AutoConfigureContractVerifierMessaging
class CamelStubRunnerSpec extends Specification {
@Autowired StubFinder stubFinder

View File

@@ -44,7 +44,6 @@ import java.util.concurrent.TimeUnit
@ContextConfiguration(classes = IntegrationStubRunnerSpec, loader = SpringBootContextLoader)
@ImportResource("classpath*:integration-context.xml")
@AutoConfigureStubRunner
@AutoConfigureContractVerifierMessaging
class IntegrationStubRunnerSpec extends Specification {
@Autowired StubFinder stubFinder

View File

@@ -46,7 +46,6 @@ import java.util.concurrent.TimeUnit
@ContextConfiguration(classes = StreamStubRunnerSpec, loader = SpringBootContextLoader)
@EnableBinding([Sink, Source])
@AutoConfigureStubRunner
@AutoConfigureContractVerifierMessaging
class StreamStubRunnerSpec extends Specification {
@Autowired StubFinder stubFinder

View File

@@ -23,6 +23,7 @@ import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.cloud.contract.verifier.messaging.boot.AutoConfigureContractVerifierMessaging;
/**
* @author Dave Syer
@@ -32,6 +33,7 @@ import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
@Retention(RetentionPolicy.RUNTIME)
@Documented
@ImportAutoConfiguration
@AutoConfigureContractVerifierMessaging
public @interface AutoConfigureStubRunner {
}

View File

@@ -22,16 +22,15 @@ import java.util.concurrent.TimeUnit;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.contract.verifier.messaging.ContractVerifierMessaging;
import org.springframework.cloud.contract.verifier.messaging.ContractVerifierMessage;
import org.springframework.cloud.contract.verifier.messaging.ContractVerifierMessageBuilder;
import org.springframework.cloud.contract.verifier.messaging.ContractVerifierMessaging;
import org.springframework.context.ApplicationContext;
import org.springframework.messaging.Message;
import org.springframework.messaging.MessageChannel;
import org.springframework.messaging.PollableChannel;
import org.springframework.stereotype.Component;
import org.springframework.cloud.contract.verifier.messaging.ContractVerifierMessage;
/**
* @author Marcin Grzejszczak
*/