Refactored Message-transformation tests for new implementations.
This commit is contained in:
@@ -29,45 +29,45 @@ import org.springframework.integration.message.MessageBuilder;
|
||||
/**
|
||||
* @author Mark Fisher
|
||||
*/
|
||||
public class HeaderTransformingMessageHandlerTests {
|
||||
public class HeaderTransformerTests {
|
||||
|
||||
@Test
|
||||
public void addHeader() {
|
||||
HeaderTransformer transformer = new HeaderTransformer() {
|
||||
public void transform(Map<String, Object> headers) {
|
||||
AbstractHeaderTransformer transformer = new AbstractHeaderTransformer() {
|
||||
@Override
|
||||
protected void transformHeaders(Map<String, Object> headers) {
|
||||
headers.put("header2", "baz");
|
||||
}
|
||||
};
|
||||
HeaderTransformingMessageHandler handler = new HeaderTransformingMessageHandler(transformer);
|
||||
Message<String> message = MessageBuilder.fromPayload("foo").setHeader("header1", "bar").build();
|
||||
Message<?> result = handler.handle(message);
|
||||
Message<?> result = transformer.transform(message);
|
||||
assertEquals("bar", result.getHeaders().get("header1"));
|
||||
assertEquals("baz", result.getHeaders().get("header2"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void replaceHeader() {
|
||||
HeaderTransformer transformer = new HeaderTransformer() {
|
||||
public void transform(Map<String, Object> headers) {
|
||||
AbstractHeaderTransformer transformer = new AbstractHeaderTransformer() {
|
||||
@Override
|
||||
protected void transformHeaders(Map<String, Object> headers) {
|
||||
headers.put("header1", "baz");
|
||||
}
|
||||
};
|
||||
HeaderTransformingMessageHandler handler = new HeaderTransformingMessageHandler(transformer);
|
||||
Message<String> message = MessageBuilder.fromPayload("foo").setHeader("header1", "bar").build();
|
||||
Message<?> result = handler.handle(message);
|
||||
Message<?> result = transformer.transform(message);
|
||||
assertEquals("baz", result.getHeaders().get("header1"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void removeHeader() {
|
||||
HeaderTransformer transformer = new HeaderTransformer() {
|
||||
public void transform(Map<String, Object> headers) {
|
||||
AbstractHeaderTransformer transformer = new AbstractHeaderTransformer() {
|
||||
@Override
|
||||
protected void transformHeaders(Map<String, Object> headers) {
|
||||
headers.remove("header1");
|
||||
}
|
||||
};
|
||||
HeaderTransformingMessageHandler handler = new HeaderTransformingMessageHandler(transformer);
|
||||
Message<String> message = MessageBuilder.fromPayload("foo").setHeader("header1", "bar").build();
|
||||
Message<?> result = handler.handle(message);
|
||||
Message<?> result = transformer.transform(message);
|
||||
assertNull(result.getHeaders().get("header1"));
|
||||
}
|
||||
|
||||
@@ -22,33 +22,31 @@ import java.util.Date;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import org.springframework.integration.message.GenericMessage;
|
||||
import org.springframework.integration.message.MessageHandlingException;
|
||||
import org.springframework.integration.message.StringMessage;
|
||||
|
||||
/**
|
||||
* @author Mark Fisher
|
||||
*/
|
||||
public class MethodInvokingPayloadTransformerTests {
|
||||
public class MethodInvokingTransformerTests {
|
||||
|
||||
@Test
|
||||
public void testSimpleMethod() throws Exception {
|
||||
MethodInvokingPayloadTransformer transformer = new MethodInvokingPayloadTransformer();
|
||||
transformer.setObject(new TestBean());
|
||||
transformer.setMethodName("exclaim");
|
||||
assertEquals("FOO!", transformer.transform("foo"));
|
||||
MethodInvokingTransformer transformer = new MethodInvokingTransformer(new TestBean(), "exclaim");
|
||||
assertEquals("FOO!", transformer.transform(new StringMessage("foo")).getPayload());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testTypeConversion() throws Exception {
|
||||
MethodInvokingPayloadTransformer transformer = new MethodInvokingPayloadTransformer();
|
||||
transformer.setObject(new TestBean());
|
||||
transformer.setMethodName("exclaim");
|
||||
assertEquals("123!", transformer.transform(123));
|
||||
MethodInvokingTransformer transformer = new MethodInvokingTransformer(new TestBean(), "exclaim");
|
||||
assertEquals("123!", transformer.transform(new GenericMessage<Integer>(123)).getPayload());
|
||||
}
|
||||
|
||||
@Test(expected=NoSuchMethodException.class)
|
||||
@Test(expected = MessageHandlingException.class)
|
||||
public void testTypeConversionFailure() throws Exception {
|
||||
MethodInvokingPayloadTransformer transformer = new MethodInvokingPayloadTransformer();
|
||||
transformer.setObject(new TestBean());
|
||||
transformer.setMethodName("exclaim");
|
||||
transformer.transform(new Date());
|
||||
MethodInvokingTransformer transformer = new MethodInvokingTransformer(new TestBean(), "exclaim");
|
||||
transformer.transform(new GenericMessage<Date>(new Date()));
|
||||
}
|
||||
|
||||
|
||||
@@ -30,37 +30,34 @@ import org.springframework.integration.message.StringMessage;
|
||||
/**
|
||||
* @author Mark Fisher
|
||||
*/
|
||||
public class PayloadTransformingMessageHandlerTests {
|
||||
public class PayloadTransformerTests {
|
||||
|
||||
@Test
|
||||
public void testSuccessfulTransformation() {
|
||||
PayloadTransformingMessageHandler handler = new PayloadTransformingMessageHandler(
|
||||
new TestPayloadTransformer());
|
||||
TestPayloadTransformer transformer = new TestPayloadTransformer();
|
||||
Message<?> message = new StringMessage("foo");
|
||||
Message<?> result = handler.handle(message);
|
||||
Message<?> result = transformer.transform(message);
|
||||
assertEquals(3, result.getPayload());
|
||||
}
|
||||
|
||||
@Test(expected=MessagingException.class)
|
||||
public void testExceptionThrownByTransformer() {
|
||||
PayloadTransformingMessageHandler handler = new PayloadTransformingMessageHandler(
|
||||
new TestPayloadTransformer());
|
||||
TestPayloadTransformer transformer = new TestPayloadTransformer();
|
||||
Message<?> message = new StringMessage("bad");
|
||||
handler.handle(message);
|
||||
transformer.transform(message);
|
||||
}
|
||||
|
||||
@Test(expected=MessagingException.class)
|
||||
public void testWrongPayloadType() {
|
||||
PayloadTransformingMessageHandler handler = new PayloadTransformingMessageHandler(
|
||||
new TestPayloadTransformer());
|
||||
TestPayloadTransformer transformer = new TestPayloadTransformer();
|
||||
Message<?> message = new GenericMessage<Date>(new Date());
|
||||
handler.handle(message);
|
||||
transformer.transform(message);
|
||||
}
|
||||
|
||||
|
||||
private static class TestPayloadTransformer implements PayloadTransformer<String, Integer> {
|
||||
private static class TestPayloadTransformer extends AbstractPayloadTransformer<String, Integer> {
|
||||
|
||||
public Integer transform(String s) throws Exception {
|
||||
public Integer transformPayload(String s) throws Exception {
|
||||
if (s.equals("bad")) {
|
||||
throw new Exception("bad input!");
|
||||
}
|
||||
Reference in New Issue
Block a user