From 70adb02ec9b4a623cca7a0e758d61aa2d0232306 Mon Sep 17 00:00:00 2001 From: Stephan Date: Fri, 4 Jan 2019 18:26:13 +0100 Subject: [PATCH] Workaround for missing message destination in message-pacts: Description field is used. --- .../spec/pact/MessagingSCContractCreator.groovy | 13 ++++++++++++- .../spec/pact/PactContractConverterSpec.groovy | 1 + 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/spring-cloud-contract-tools/spring-cloud-contract-pact/src/main/groovy/org/springframework/cloud/contract/verifier/spec/pact/MessagingSCContractCreator.groovy b/spring-cloud-contract-tools/spring-cloud-contract-pact/src/main/groovy/org/springframework/cloud/contract/verifier/spec/pact/MessagingSCContractCreator.groovy index f36e3c1ae6..d7da02f98b 100644 --- a/spring-cloud-contract-tools/spring-cloud-contract-pact/src/main/groovy/org/springframework/cloud/contract/verifier/spec/pact/MessagingSCContractCreator.groovy +++ b/spring-cloud-contract-tools/spring-cloud-contract-pact/src/main/groovy/org/springframework/cloud/contract/verifier/spec/pact/MessagingSCContractCreator.groovy @@ -133,6 +133,9 @@ class MessagingSCContractCreator { } } } + + sentTo(guessDestination(message)); + } } }) @@ -147,4 +150,12 @@ class MessagingSCContractCreator { .uncapitalize() + "()" } -} \ No newline at end of file + private String guessDestination(Message message) { + String[] outcomeParts = message.description.split(' ') + if (outcomeParts.length > 0) { + return outcomeParts[outcomeParts.length - 1] + } + return '' + } + +} diff --git a/spring-cloud-contract-tools/spring-cloud-contract-pact/src/test/groovy/org/springframework/cloud/contract/verifier/spec/pact/PactContractConverterSpec.groovy b/spring-cloud-contract-tools/spring-cloud-contract-pact/src/test/groovy/org/springframework/cloud/contract/verifier/spec/pact/PactContractConverterSpec.groovy index 0052e0c2f5..5933950e3b 100644 --- a/spring-cloud-contract-tools/spring-cloud-contract-pact/src/test/groovy/org/springframework/cloud/contract/verifier/spec/pact/PactContractConverterSpec.groovy +++ b/spring-cloud-contract-tools/spring-cloud-contract-pact/src/test/groovy/org/springframework/cloud/contract/verifier/spec/pact/PactContractConverterSpec.groovy @@ -659,6 +659,7 @@ class PactContractConverterSpec extends Specification { triggeredBy('bookReturnedTriggered()') } outputMessage { + sentTo 'activemq:output' body([ bookName: "foo" ])