From f8b501e4f9194950eec9c61e44bcd70ccb5b6fc6 Mon Sep 17 00:00:00 2001 From: Oleg Zhurakousky Date: Tue, 21 Sep 2010 13:49:46 -0400 Subject: [PATCH] INT-1257, added convinience method MessageHistory.containsEntryWithName(string), added tests in XML to validate MessageHistory --- .../integration/history/MessageHistory.java | 9 +++++++++ .../transformer/XsltTransformerTests-context.xml | 2 ++ .../xml/transformer/XsltTransformerTests.java | 13 +++++++++---- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/spring-integration-core/src/main/java/org/springframework/integration/history/MessageHistory.java b/spring-integration-core/src/main/java/org/springframework/integration/history/MessageHistory.java index 4bfbcf2294..f6f4575b25 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/history/MessageHistory.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/history/MessageHistory.java @@ -87,6 +87,15 @@ public class MessageHistory implements List { public boolean contains(Object o) { return this.components.contains(o); } + + public boolean containsEntryWithName(String name) { + for (Properties properties : components) { + if (properties.getProperty("name").equals(name)){ + return true; + } + } + return false; + } public boolean containsAll(Collection c) { return this.components.containsAll(c); diff --git a/spring-integration-xml/src/test/java/org/springframework/integration/xml/transformer/XsltTransformerTests-context.xml b/spring-integration-xml/src/test/java/org/springframework/integration/xml/transformer/XsltTransformerTests-context.xml index aa7aace808..ec8d54befe 100644 --- a/spring-integration-xml/src/test/java/org/springframework/integration/xml/transformer/XsltTransformerTests-context.xml +++ b/spring-integration-xml/src/test/java/org/springframework/integration/xml/transformer/XsltTransformerTests-context.xml @@ -6,6 +6,8 @@ http://www.springframework.org/schema/integration http://www.springframework.org/schema/integration/spring-integration-2.0.xsd http://www.springframework.org/schema/integration/xml http://www.springframework.org/schema/integration/xml/spring-integration-xml-2.0.xsd"> + + diff --git a/spring-integration-xml/src/test/java/org/springframework/integration/xml/transformer/XsltTransformerTests.java b/spring-integration-xml/src/test/java/org/springframework/integration/xml/transformer/XsltTransformerTests.java index 5eb09de053..5e4724c841 100644 --- a/spring-integration-xml/src/test/java/org/springframework/integration/xml/transformer/XsltTransformerTests.java +++ b/spring-integration-xml/src/test/java/org/springframework/integration/xml/transformer/XsltTransformerTests.java @@ -23,6 +23,7 @@ import org.springframework.context.ApplicationContext; import org.springframework.integration.Message; import org.springframework.integration.MessageChannel; import org.springframework.integration.channel.QueueChannel; +import org.springframework.integration.history.MessageHistory; import org.springframework.integration.support.MessageBuilder; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -54,7 +55,8 @@ public class XsltTransformerTests { build(); input.send(message); Message resultMessage = output.receive(); - System.out.println("Result: " + resultMessage); + MessageHistory history = MessageHistory.read(resultMessage); + assertTrue(history.containsEntryWithName("paramHeadersWithStartWildCharacter")); assertEquals("Wrong payload type",String.class, resultMessage.getPayload().getClass()); assertTrue(((String) resultMessage.getPayload()).contains("testParamValue")); assertFalse(((String) resultMessage.getPayload()).contains("FOO")); @@ -68,7 +70,8 @@ public class XsltTransformerTests { build(); input.send(message); Message resultMessage = output.receive(); - System.out.println("Result: " + resultMessage); + MessageHistory history = MessageHistory.read(resultMessage); + assertTrue(history.containsEntryWithName("paramHeadersWithEndWildCharacter")); assertEquals("Wrong payload type",String.class, resultMessage.getPayload().getClass()); assertTrue(((String) resultMessage.getPayload()).contains("testParamValue")); assertTrue(((String) resultMessage.getPayload()).contains("FOO")); @@ -82,7 +85,8 @@ public class XsltTransformerTests { build(); input.send(message); Message resultMessage = output.receive(); - System.out.println("Result: " + resultMessage); + MessageHistory history = MessageHistory.read(resultMessage); + assertTrue(history.containsEntryWithName("paramHeadersWithIndividualParameters")); assertEquals("Wrong payload type",String.class, resultMessage.getPayload().getClass()); assertTrue(((String) resultMessage.getPayload()).contains("testParamValue")); assertTrue(((String) resultMessage.getPayload()).contains("FOO")); @@ -98,7 +102,8 @@ public class XsltTransformerTests { build(); input.send(message); Message resultMessage = output.receive(); - System.out.println("Result: " + resultMessage); + MessageHistory history = MessageHistory.read(resultMessage); + assertTrue(history.containsEntryWithName("paramHeadersComboChannel")); assertEquals("Wrong payload type",String.class, resultMessage.getPayload().getClass()); assertTrue(((String) resultMessage.getPayload()).contains("testParamValue")); assertTrue(((String) resultMessage.getPayload()).contains("FOO"));