diff --git a/build.gradle b/build.gradle index ee3ca7cccd..5db8e69cb8 100644 --- a/build.gradle +++ b/build.gradle @@ -266,6 +266,7 @@ project('spring-integration-groovy') { description = 'Spring Integration Groovy Support' dependencies { compile project(":spring-integration-core") + compile project(":spring-integration-scripting") compile "org.codehaus.groovy:groovy-all:1.7.5" compile "org.springframework:spring-context-support:$springVersion" } diff --git a/spring-integration-core/src/main/resources/META-INF/spring.schemas b/spring-integration-core/src/main/resources/META-INF/spring.schemas index aee88e2097..0a0369d36f 100644 --- a/spring-integration-core/src/main/resources/META-INF/spring.schemas +++ b/spring-integration-core/src/main/resources/META-INF/spring.schemas @@ -1,6 +1,4 @@ http\://www.springframework.org/schema/integration/spring-integration-1.0.xsd=org/springframework/integration/config/xml/spring-integration-1.0.xsd http\://www.springframework.org/schema/integration/spring-integration-2.0.xsd=org/springframework/integration/config/xml/spring-integration-2.0.xsd http\://www.springframework.org/schema/integration/spring-integration-2.1.xsd=org/springframework/integration/config/xml/spring-integration-2.1.xsd -http\://www.springframework.org/schema/integration/spring-integration.xsd=org/springframework/integration/config/xml/spring-integration-2.1.xsd -http\://www.springframework.org/schema/integration/scripting/spring-integration-scripting-core.xsd=org/springframework/integration/scripting/config/xml/spring-integration-scripting-core-2.1.xsd -http\://www.springframework.org/schema/integration/scripting/spring-integration-scripting-core-2.1.xsd=org/springframework/integration/scripting/config/xml/spring-integration-scripting-core-2.1.xsd +http\://www.springframework.org/schema/integration/spring-integration.xsd=org/springframework/integration/config/xml/spring-integration-2.1.xsd \ No newline at end of file diff --git a/spring-integration-groovy/src/main/java/org/springframework/integration/groovy/config/GroovyScriptParser.java b/spring-integration-groovy/src/main/java/org/springframework/integration/groovy/config/GroovyScriptParser.java index c3a9ad5f6e..ed263b9fdf 100644 --- a/spring-integration-groovy/src/main/java/org/springframework/integration/groovy/config/GroovyScriptParser.java +++ b/spring-integration-groovy/src/main/java/org/springframework/integration/groovy/config/GroovyScriptParser.java @@ -18,13 +18,14 @@ package org.springframework.integration.groovy.config; import org.springframework.beans.factory.support.BeanDefinitionBuilder; import org.springframework.beans.factory.xml.ParserContext; -import org.springframework.integration.config.xml.AbstractScriptParser; +import org.springframework.integration.scripting.config.AbstractScriptParser; import org.springframework.integration.config.xml.IntegrationNamespaceUtils; import org.w3c.dom.Element; /** * @author Mark Fisher * @author Oleg Zhurakousky + * @author David Turanski * @since 2.0 */ public class GroovyScriptParser extends AbstractScriptParser { diff --git a/spring-integration-groovy/src/main/resources/META-INF/spring.schemas b/spring-integration-groovy/src/main/resources/META-INF/spring.schemas index d108fd34b0..24b85b0e9e 100644 --- a/spring-integration-groovy/src/main/resources/META-INF/spring.schemas +++ b/spring-integration-groovy/src/main/resources/META-INF/spring.schemas @@ -1,3 +1,3 @@ http\://www.springframework.org/schema/integration/groovy/spring-integration-groovy-2.0.xsd=org/springframework/integration/groovy/config/spring-integration-groovy-2.0.xsd http\://www.springframework.org/schema/integration/groovy/spring-integration-groovy-2.1.xsd=org/springframework/integration/groovy/config/spring-integration-groovy-2.1.xsd -http\://www.springframework.org/schema/integration/groovy/spring-integration-groovy.xsd=org/springframework/integration/groovy/config/spring-integration-groovy-2.1.xsd +http\://www.springframework.org/schema/integration/groovy/spring-integration-groovy.xsd=org/springframework/integration/groovy/config/spring-integration-groovy-2.1.xsd \ No newline at end of file diff --git a/spring-integration-core/src/main/java/org/springframework/integration/scripting/AbstractScriptExecutingMessageProcessor.java b/spring-integration-scripting/src/main/java/org/springframework/integration/scripting/AbstractScriptExecutingMessageProcessor.java similarity index 100% rename from spring-integration-core/src/main/java/org/springframework/integration/scripting/AbstractScriptExecutingMessageProcessor.java rename to spring-integration-scripting/src/main/java/org/springframework/integration/scripting/AbstractScriptExecutingMessageProcessor.java diff --git a/spring-integration-core/src/main/java/org/springframework/integration/scripting/DefaultScriptVariableGenerator.java b/spring-integration-scripting/src/main/java/org/springframework/integration/scripting/DefaultScriptVariableGenerator.java similarity index 100% rename from spring-integration-core/src/main/java/org/springframework/integration/scripting/DefaultScriptVariableGenerator.java rename to spring-integration-scripting/src/main/java/org/springframework/integration/scripting/DefaultScriptVariableGenerator.java diff --git a/spring-integration-core/src/main/java/org/springframework/integration/scripting/RefreshableResourceScriptSource.java b/spring-integration-scripting/src/main/java/org/springframework/integration/scripting/RefreshableResourceScriptSource.java similarity index 100% rename from spring-integration-core/src/main/java/org/springframework/integration/scripting/RefreshableResourceScriptSource.java rename to spring-integration-scripting/src/main/java/org/springframework/integration/scripting/RefreshableResourceScriptSource.java diff --git a/spring-integration-core/src/main/java/org/springframework/integration/scripting/ScriptVariableGenerator.java b/spring-integration-scripting/src/main/java/org/springframework/integration/scripting/ScriptVariableGenerator.java similarity index 100% rename from spring-integration-core/src/main/java/org/springframework/integration/scripting/ScriptVariableGenerator.java rename to spring-integration-scripting/src/main/java/org/springframework/integration/scripting/ScriptVariableGenerator.java diff --git a/spring-integration-core/src/main/java/org/springframework/integration/config/xml/AbstractScriptParser.java b/spring-integration-scripting/src/main/java/org/springframework/integration/scripting/config/AbstractScriptParser.java similarity index 97% rename from spring-integration-core/src/main/java/org/springframework/integration/config/xml/AbstractScriptParser.java rename to spring-integration-scripting/src/main/java/org/springframework/integration/scripting/config/AbstractScriptParser.java index 4f527ac6fe..286386386f 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/config/xml/AbstractScriptParser.java +++ b/spring-integration-scripting/src/main/java/org/springframework/integration/scripting/config/AbstractScriptParser.java @@ -10,7 +10,7 @@ * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the * specific language governing permissions and limitations under the License. */ -package org.springframework.integration.config.xml; +package org.springframework.integration.scripting.config; import java.util.List; @@ -21,6 +21,7 @@ import org.springframework.beans.factory.support.ManagedMap; import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser; import org.springframework.beans.factory.xml.ParserContext; import org.springframework.beans.factory.xml.XmlReaderContext; +import org.springframework.integration.config.xml.IntegrationNamespaceUtils; import org.springframework.scripting.support.StaticScriptSource; import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; diff --git a/spring-integration-scripting/src/main/java/org/springframework/integration/scripting/config/jsr223/ScriptParser.java b/spring-integration-scripting/src/main/java/org/springframework/integration/scripting/config/jsr223/ScriptParser.java index 0aaa378cca..dd04bcc637 100644 --- a/spring-integration-scripting/src/main/java/org/springframework/integration/scripting/config/jsr223/ScriptParser.java +++ b/spring-integration-scripting/src/main/java/org/springframework/integration/scripting/config/jsr223/ScriptParser.java @@ -18,7 +18,7 @@ package org.springframework.integration.scripting.config.jsr223; import org.springframework.beans.factory.support.BeanDefinitionBuilder; import org.springframework.beans.factory.xml.ParserContext; -import org.springframework.integration.config.xml.AbstractScriptParser; +import org.springframework.integration.scripting.config.AbstractScriptParser; import org.springframework.integration.scripting.jsr223.DefaultScriptExecutor; import org.springframework.util.Assert; import org.w3c.dom.Element; diff --git a/spring-integration-scripting/src/main/resources/META-INF/spring.handlers b/spring-integration-scripting/src/main/resources/META-INF/spring.handlers index 01d08db05d..bc3dff4203 100644 --- a/spring-integration-scripting/src/main/resources/META-INF/spring.handlers +++ b/spring-integration-scripting/src/main/resources/META-INF/spring.handlers @@ -1 +1 @@ -http\://www.springframework.org/schema/integration/script=org.springframework.integration.scripting.config.jsr223.ScriptNamespaceHandler +http\://www.springframework.org/schema/integration/scripting=org.springframework.integration.scripting.config.jsr223.ScriptNamespaceHandler diff --git a/spring-integration-scripting/src/main/resources/META-INF/spring.schemas b/spring-integration-scripting/src/main/resources/META-INF/spring.schemas index a6072eeb56..0ad1b19997 100644 --- a/spring-integration-scripting/src/main/resources/META-INF/spring.schemas +++ b/spring-integration-scripting/src/main/resources/META-INF/spring.schemas @@ -1,2 +1,4 @@ -http\://www.springframework.org/schema/integration/script-2.1.xsd=org/springframework/integration/script/config/spring-integration-script-2.1.xsd -http\://www.springframework.org/schema/integration/script.xsd=org/springframework/integration/script/config/spring-integration-script-2.1.xsd +http\://www.springframework.org/schema/integration/scripting/spring-integration-scripting-2.1.xsd=org/springframework/integration/scripting/config/spring-integration-scripting-2.1.xsd +http\://www.springframework.org/schema/integration/scripting/spring-integration-scripting.xsd=org/springframework/integration/scripting/config/spring-integration-scripting-2.1.xsd +http\://www.springframework.org/schema/integration/scripting/spring-integration-scripting-core-2.1.xsd=org/springframework/integration/scripting/config/spring-integration-scripting-core-2.1.xsd +http\://www.springframework.org/schema/integration/scripting/spring-integration-scripting-core.xsd=org/springframework/integration/scripting/config/spring-integration-scripting-core-2.1.xsd \ No newline at end of file diff --git a/spring-integration-scripting/src/main/resources/META-INF/spring.tooling b/spring-integration-scripting/src/main/resources/META-INF/spring.tooling index c60b4d5e8d..14bf96f34f 100644 --- a/spring-integration-scripting/src/main/resources/META-INF/spring.tooling +++ b/spring-integration-scripting/src/main/resources/META-INF/spring.tooling @@ -1,4 +1,4 @@ -# Tooling related information for the integration script namespace -http\://www.springframework.org/schema/integration/script@name=integration script Namespace -http\://www.springframework.org/schema/integration/script@prefix=int-script -http\://www.springframework.org/schema/integration/script@icon=org/springframework/integration/script/config/spring-integration-script.gif +# Tooling related information for the integration scripting namespace +http\://www.springframework.org/schema/integration/scripting@name=integration scripting Namespace +http\://www.springframework.org/schema/integration/scripting@prefix=int-script +http\://www.springframework.org/schema/integration/scripting@icon=org/springframework/integration/scripting/config/spring-integration-scripting.gif diff --git a/spring-integration-scripting/src/main/resources/org/springframework/integration/script/config/spring-integration-script-2.1.xsd b/spring-integration-scripting/src/main/resources/org/springframework/integration/scripting/config/spring-integration-scripting-2.1.xsd similarity index 97% rename from spring-integration-scripting/src/main/resources/org/springframework/integration/script/config/spring-integration-script-2.1.xsd rename to spring-integration-scripting/src/main/resources/org/springframework/integration/scripting/config/spring-integration-scripting-2.1.xsd index 1f7ffe96cd..c231e310a6 100644 --- a/spring-integration-scripting/src/main/resources/org/springframework/integration/script/config/spring-integration-script-2.1.xsd +++ b/spring-integration-scripting/src/main/resources/org/springframework/integration/scripting/config/spring-integration-scripting-2.1.xsd @@ -1,7 +1,7 @@ - + http://www.springframework.org/schema/integration/scripting http://www.springframework.org/schema/integration/scripting/spring-integration-scripting.xsd"> diff --git a/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223HeaderEnricherTests-context.xml b/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223HeaderEnricherTests-context.xml index 237afaeb63..8950c85815 100644 --- a/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223HeaderEnricherTests-context.xml +++ b/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223HeaderEnricherTests-context.xml @@ -2,10 +2,10 @@ + http://www.springframework.org/schema/integration/scripting http://www.springframework.org/schema/integration/scripting/spring-integration-scripting.xsd"> diff --git a/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223RefreshTests-context.xml b/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223RefreshTests-context.xml index 1bdbe3bd91..51f873994c 100644 --- a/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223RefreshTests-context.xml +++ b/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223RefreshTests-context.xml @@ -2,10 +2,10 @@ + http://www.springframework.org/schema/integration/scripting http://www.springframework.org/schema/integration/scripting/spring-integration-scripting.xsd"> diff --git a/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223RouterTests-context.xml b/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223RouterTests-context.xml index 31b9bad53b..266178ab63 100644 --- a/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223RouterTests-context.xml +++ b/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223RouterTests-context.xml @@ -2,10 +2,10 @@ + http://www.springframework.org/schema/integration/scripting http://www.springframework.org/schema/integration/scripting/spring-integration-scripting.xsd"> diff --git a/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223ServiceActivatorTests-context.xml b/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223ServiceActivatorTests-context.xml index c95155577d..00dcea4762 100644 --- a/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223ServiceActivatorTests-context.xml +++ b/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223ServiceActivatorTests-context.xml @@ -3,11 +3,11 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:beans="http://www.springframework.org/schema/beans" xmlns:aop="http://www.springframework.org/schema/aop" - xmlns:script="http://www.springframework.org/schema/integration/script" + xmlns:script="http://www.springframework.org/schema/integration/scripting" xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/integration http://www.springframework.org/schema/integration/spring-integration.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd - http://www.springframework.org/schema/integration/script http://www.springframework.org/schema/integration/script.xsd"> + http://www.springframework.org/schema/integration/scripting http://www.springframework.org/schema/integration/scripting/spring-integration-scripting.xsd"> + http://www.springframework.org/schema/integration/scripting http://www.springframework.org/schema/integration/scripting/spring-integration-scripting.xsd"> diff --git a/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223ServiceActivatorTests-fail-withgenerator-context.xml b/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223ServiceActivatorTests-fail-withgenerator-context.xml index ec992cf682..b462bdb7fa 100644 --- a/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223ServiceActivatorTests-fail-withgenerator-context.xml +++ b/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223ServiceActivatorTests-fail-withgenerator-context.xml @@ -2,10 +2,10 @@ + http://www.springframework.org/schema/integration/scripting http://www.springframework.org/schema/integration/scripting/spring-integration-scripting.xsd"> diff --git a/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223TransformerTests-context.xml b/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223TransformerTests-context.xml index c668de58db..6096802dcc 100644 --- a/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223TransformerTests-context.xml +++ b/spring-integration-scripting/src/test/java/org/springframework/integration/scripting/config/jsr223/Jsr223TransformerTests-context.xml @@ -2,10 +2,10 @@ + http://www.springframework.org/schema/integration/scripting http://www.springframework.org/schema/integration/scripting/spring-integration-scripting.xsd"> response = ((PollableChannel) outputChannel).receive(10000); assertNotNull(name + ": receive timeout on " + scenario.getOutputChannelName(),response); - - if (scenario.getResponseValidator() instanceof PayloadValidator){ - scenario.getResponseValidator().validateResponse(response.getPayload()); - } else { - scenario.getResponseValidator().validateResponse(response); - } + scenario.getResponseValidator().handleMessage(response); } + + assertNotNull("message was not handled on " + outputChannel + " for scenario '" + scenario.getName() + "'.", + scenario.getResponseValidator().getLastMessage()); } } /** diff --git a/spring-integration-test/src/main/java/org/springframework/integration/test/support/AbstractResponseValidator.java b/spring-integration-test/src/main/java/org/springframework/integration/test/support/AbstractResponseValidator.java index 15fb868baf..4cc1e21133 100644 --- a/spring-integration-test/src/main/java/org/springframework/integration/test/support/AbstractResponseValidator.java +++ b/spring-integration-test/src/main/java/org/springframework/integration/test/support/AbstractResponseValidator.java @@ -8,20 +8,33 @@ import org.springframework.integration.core.MessageHandler; * @author David Turanski * */ -public abstract class AbstractResponseValidator implements MessageHandler { - +public abstract class AbstractResponseValidator implements MessageHandler { + + private Message lastMessage; + /** + * handle the message + */ + @SuppressWarnings("unchecked") + //@Override public void handleMessage(Message message) throws MessagingException { - validateResponse(extractPayload()? message.getPayload(): message ); + this.lastMessage = message; + validateResponse((T) (extractPayload()? message.getPayload(): message )); } /** * Implement this method to validate the response (Message or Payload) * @param response */ - protected abstract void validateResponse(Object response); + protected abstract void validateResponse(T response); /** * If true will extract the payload as the parameter for validateResponse() * @return true to extract the payload; false to process the message. */ protected abstract boolean extractPayload(); + /** + * @return the lastMessage + */ + public Message getLastMessage() { + return lastMessage; + } } diff --git a/spring-integration-test/src/main/java/org/springframework/integration/test/support/MessageValidator.java b/spring-integration-test/src/main/java/org/springframework/integration/test/support/MessageValidator.java index 47c077adb3..0a55b92ce8 100644 --- a/spring-integration-test/src/main/java/org/springframework/integration/test/support/MessageValidator.java +++ b/spring-integration-test/src/main/java/org/springframework/integration/test/support/MessageValidator.java @@ -7,12 +7,12 @@ import org.springframework.integration.Message; * @author David Turanski * */ -public abstract class MessageValidator extends AbstractResponseValidator { +public abstract class MessageValidator extends AbstractResponseValidator> { protected final boolean extractPayload(){ return false; } - protected final void validateResponse(Object response){ + protected final void validateResponse(Message response){ validateMessage((Message) response); } /** diff --git a/spring-integration-test/src/main/java/org/springframework/integration/test/support/PayloadValidator.java b/spring-integration-test/src/main/java/org/springframework/integration/test/support/PayloadValidator.java index 8fda95ba58..aadc5a6377 100644 --- a/spring-integration-test/src/main/java/org/springframework/integration/test/support/PayloadValidator.java +++ b/spring-integration-test/src/main/java/org/springframework/integration/test/support/PayloadValidator.java @@ -5,7 +5,7 @@ package org.springframework.integration.test.support; * @author David Turanski * */ -public abstract class PayloadValidator extends AbstractResponseValidator { +public abstract class PayloadValidator extends AbstractResponseValidator { protected final boolean extractPayload(){ return true; } diff --git a/spring-integration-test/src/main/java/org/springframework/integration/test/support/RequestResponseScenario.java b/spring-integration-test/src/main/java/org/springframework/integration/test/support/RequestResponseScenario.java index 32e15d1dd7..23f50b0da1 100644 --- a/spring-integration-test/src/main/java/org/springframework/integration/test/support/RequestResponseScenario.java +++ b/spring-integration-test/src/main/java/org/springframework/integration/test/support/RequestResponseScenario.java @@ -14,7 +14,7 @@ public class RequestResponseScenario { private final String outputChannelName; private Object payload; private Message message; - private AbstractResponseValidator responseValidator; + private AbstractResponseValidator responseValidator; private String name; protected Message getMessage(){ @@ -91,7 +91,7 @@ public class RequestResponseScenario { * @return the response validator * @see AbstractResponseValidator */ - public AbstractResponseValidator getResponseValidator(){ + public AbstractResponseValidator getResponseValidator(){ return responseValidator; } @@ -101,7 +101,7 @@ public class RequestResponseScenario { * @param responseValidator * @return */ - public RequestResponseScenario setResponseValidator(AbstractResponseValidator responseValidator) { + public RequestResponseScenario setResponseValidator(AbstractResponseValidator responseValidator) { this.responseValidator = responseValidator; return this; } diff --git a/spring-integration-test/src/main/java/org/springframework/integration/test/support/SingleRequestResponseScenarioTest.java b/spring-integration-test/src/main/java/org/springframework/integration/test/support/SingleRequestResponseScenarioTest.java new file mode 100644 index 0000000000..48670e45b0 --- /dev/null +++ b/spring-integration-test/src/main/java/org/springframework/integration/test/support/SingleRequestResponseScenarioTest.java @@ -0,0 +1,31 @@ +/* + * Copyright 2002-2011 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on + * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the + * specific language governing permissions and limitations under the License. + */ +package org.springframework.integration.test.support; +import java.util.Collections; +import java.util.List; + +/** + * Convenience class for a single {@link RequestResponsScenario} test + * @author David Turanski + * + */ + +public abstract class SingleRequestResponseScenarioTest extends AbstractRequestResponseScenarioTest { + + @Override + protected List defineRequestResponseScenarios() { + return Collections.singletonList(defineRequestResponseScenario()); + } + + protected abstract RequestResponseScenario defineRequestResponseScenario(); +} diff --git a/spring-integration-test/src/test/java/org/springframework/integration/test/support/MessageScenariosTest.java b/spring-integration-test/src/test/java/org/springframework/integration/test/support/MessageScenariosTest.java index 15c3f92676..6723cc0142 100644 --- a/spring-integration-test/src/test/java/org/springframework/integration/test/support/MessageScenariosTest.java +++ b/spring-integration-test/src/test/java/org/springframework/integration/test/support/MessageScenariosTest.java @@ -21,9 +21,9 @@ public class MessageScenariosTest extends AbstractRequestResponseScenarioTest { RequestResponseScenario scenario1 = new RequestResponseScenario( "inputChannel","outputChannel") .setPayload("hello") - .setResponseValidator(new PayloadValidator() { + .setResponseValidator(new PayloadValidator() { @Override - protected void validateResponse(Object response) { + protected void validateResponse(String response) { assertEquals("HELLO",response); } }); diff --git a/spring-integration-test/src/test/java/org/springframework/integration/test/support/SingleScenarioTest.java b/spring-integration-test/src/test/java/org/springframework/integration/test/support/SingleScenarioTest.java new file mode 100644 index 0000000000..16e944429f --- /dev/null +++ b/spring-integration-test/src/test/java/org/springframework/integration/test/support/SingleScenarioTest.java @@ -0,0 +1,26 @@ +package org.springframework.integration.test.support; + +import static org.junit.Assert.assertEquals; + +import org.springframework.test.context.ContextConfiguration; + +@ContextConfiguration("MessageScenariosTest-context.xml") +public class SingleScenarioTest extends SingleRequestResponseScenarioTest { + + /* (non-Javadoc) + * @see org.springframework.integration.test.support.SingleRequestResponseScenarioTest#defineRequestResponseScenario() + */ + @Override + protected RequestResponseScenario defineRequestResponseScenario() { + RequestResponseScenario scenario = new RequestResponseScenario( + "inputChannel","outputChannel") + .setPayload("hello") + .setResponseValidator(new PayloadValidator() { + @Override + protected void validateResponse(String response) { + assertEquals("HELLO",response); + } + }); + return scenario; + } +}