Add back the ContractVerifierMessage in an internal package

It's easier to write generated tests with this abstraction, but
it doesn't have to be visible to users.
This commit is contained in:
Dave Syer
2016-07-19 07:21:00 +01:00
parent a3712e77c4
commit 03d8554adb
36 changed files with 446 additions and 191 deletions

View File

@@ -21,9 +21,9 @@ import javax.inject.Inject
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.boot.test.context.SpringBootContextLoader
import org.springframework.cloud.contract.spec.Contract
import org.springframework.cloud.contract.verifier.messaging.ContractVerifierMessaging
import org.springframework.cloud.contract.verifier.messaging.ContractVerifierObjectMapper
import org.springframework.cloud.contract.verifier.messaging.ContractVerifierMessageExchange
import org.springframework.cloud.contract.verifier.messaging.boot.AutoConfigureContractVerifierMessaging
import org.springframework.cloud.contract.verifier.messaging.internal.ContractVerifierObjectMapper;
import org.springframework.messaging.Message
import org.springframework.test.annotation.DirtiesContext
import org.springframework.test.context.ContextConfiguration
@@ -40,7 +40,7 @@ import com.toomuchcoding.jsonassert.JsonAssertion
public class IntegrationMessagingApplicationSpec extends Specification {
// ALL CASES
@Inject ContractVerifierMessaging<Message<?>> contractVerifierMessaging
@Inject ContractVerifierMessageExchange<Message<?>> contractVerifierMessaging
ContractVerifierObjectMapper contractVerifierObjectMapper = new ContractVerifierObjectMapper()
def "should work for triggered based messaging"() {
@@ -73,7 +73,7 @@ public class IntegrationMessagingApplicationSpec extends Specification {
when:
bookReturnedTriggered()
then:
def response = contractVerifierMessaging.receiveMessage('output')
def response = contractVerifierMessaging.receive('output')
response.headers.get('BOOK-NAME') == 'foo'
and:
DocumentContext parsedJson = JsonPath.parse(contractVerifierObjectMapper.writeValueAsString(response.payload))
@@ -118,7 +118,7 @@ public class IntegrationMessagingApplicationSpec extends Specification {
contractVerifierObjectMapper.writeValueAsString([bookName: 'foo']),
[sample: 'header'], 'input')
then:
def response = contractVerifierMessaging.receiveMessage('output')
def response = contractVerifierMessaging.receive('output')
response.headers.get('BOOK-NAME') == 'foo'
and:
DocumentContext parsedJson = JsonPath.parse(contractVerifierObjectMapper.writeValueAsString(response.payload))