Migrating to byte arrays; fixes #605

This commit is contained in:
Marcin Grzejszczak
2018-04-04 16:03:43 +02:00
parent 482f000f72
commit 9abc2b39e1
4 changed files with 10 additions and 6 deletions

View File

@@ -40,7 +40,7 @@ class StubRunnerIntegrationTransformer implements GenericTransformer<Message<?>,
@Override
public Message<?> transform(Message<?> source) {
if (this.groovyDsl.getOutputMessage()==null) {
if (this.groovyDsl.getOutputMessage() == null) {
return source;
}
String payload = BodyExtractor.extractStubValueFrom(this.groovyDsl.getOutputMessage().getBody());

View File

@@ -45,6 +45,6 @@ class StubRunnerStreamTransformer implements GenericTransformer<Message<?>, Mess
}
String payload = BodyExtractor.extractStubValueFrom(this.groovyDsl.getOutputMessage().getBody());
Map<String, Object> headers = this.groovyDsl.getOutputMessage().getHeaders().asStubSideMap();
return MessageBuilder.createMessage(payload, new MessageHeaders(headers));
return MessageBuilder.createMessage(payload.getBytes(), new MessageHeaders(headers));
}
}

View File

@@ -28,7 +28,11 @@ import org.springframework.messaging.support.MessageBuilder;
class ContractVerifierStreamMessageBuilder {
public <T> Message<?> create(T payload, Map<String, Object> headers) {
return MessageBuilder.createMessage(payload, new MessageHeaders(headers));
Object payloadToSend = payload;
if (payload instanceof String) {
payloadToSend = ((String) payload).getBytes();
}
return MessageBuilder.createMessage(payloadToSend, new MessageHeaders(headers));
}
}

View File

@@ -59,7 +59,7 @@ class StubRunnerStreamTransformerSpec extends Specification {
when:
def result = streamTransformer.transform(message)
then:
result.payload == '{"responseId":"123"}'
result.payload == '{"responseId":"123"}'.bytes
}
def dslWithRegexInGString = Contract.make {
@@ -90,7 +90,7 @@ class StubRunnerStreamTransformerSpec extends Specification {
when:
def result = streamTransformer.transform(message)
then:
result.payload == '''{"id":"99","temperature":"123.45"}'''
result.payload == '''{"id":"99","temperature":"123.45"}'''.bytes
}
def 'should parse dsl without DslProperty'() {
@@ -126,7 +126,7 @@ class StubRunnerStreamTransformerSpec extends Specification {
when:
def result = streamTransformer.transform(message)
then:
result.payload == '''{"orderId":"40058c70-891c-4176-a033-f70bad0c5f77","description":"This is the order description"}'''
result.payload == '''{"orderId":"40058c70-891c-4176-a033-f70bad0c5f77","description":"This is the order description"}'''.bytes
}
}