|
42 | 42 | import org.springframework.integration.channel.DirectChannel;
|
43 | 43 | import org.springframework.integration.channel.NullChannel;
|
44 | 44 | import org.springframework.integration.channel.QueueChannel;
|
| 45 | +import org.springframework.integration.handler.DelayHandler; |
45 | 46 | import org.springframework.integration.history.MessageHistory;
|
46 | 47 | import org.springframework.integration.message.AdviceMessage;
|
47 | 48 | import org.springframework.integration.redis.RedisContainerTest;
|
48 | 49 | import org.springframework.integration.store.MessageGroup;
|
49 | 50 | import org.springframework.integration.store.SimpleMessageGroup;
|
| 51 | +import org.springframework.integration.support.DefaultMessageBuilderFactory; |
50 | 52 | import org.springframework.integration.support.MessageBuilder;
|
51 | 53 | import org.springframework.integration.support.MutableMessage;
|
52 | 54 | import org.springframework.integration.support.json.JacksonJsonUtils;
|
|
64 | 66 | * @author Artem Bilan
|
65 | 67 | * @author Gary Russell
|
66 | 68 | * @author Artem Vozhdayenko
|
| 69 | + * @author Youbin Wu |
67 | 70 | */
|
68 | 71 | class RedisMessageGroupStoreTests implements RedisContainerTest {
|
69 | 72 |
|
@@ -400,16 +403,21 @@ void testJsonSerialization() {
|
400 | 403 | Message<?> mutableMessage = new MutableMessage<>(UUID.randomUUID());
|
401 | 404 | Message<?> adviceMessage = new AdviceMessage<>("foo", genericMessage);
|
402 | 405 | ErrorMessage errorMessage = new ErrorMessage(new RuntimeException("test exception"), mutableMessage);
|
| 406 | + Message<?> delayMessage = new DefaultMessageBuilderFactory() |
| 407 | + .withPayload(new DelayHandler.DelayedMessageWrapper(genericMessage, System.currentTimeMillis())) |
| 408 | + .copyHeaders(genericMessage.getHeaders()) |
| 409 | + .build(); |
403 | 410 |
|
404 |
| - store.addMessagesToGroup(this.groupId, genericMessage, mutableMessage, adviceMessage, errorMessage); |
| 411 | + store.addMessagesToGroup(this.groupId, genericMessage, mutableMessage, adviceMessage, errorMessage, delayMessage); |
405 | 412 |
|
406 | 413 | MessageGroup messageGroup = store.getMessageGroup(this.groupId);
|
407 |
| - assertThat(messageGroup.size()).isEqualTo(4); |
| 414 | + assertThat(messageGroup.size()).isEqualTo(5); |
408 | 415 | List<Message<?>> messages = new ArrayList<>(messageGroup.getMessages());
|
409 | 416 | assertThat(messages.get(0)).isEqualTo(genericMessage);
|
410 | 417 | assertThat(messages.get(0).getHeaders()).containsKeys(MessageHistory.HEADER_NAME);
|
411 | 418 | assertThat(messages.get(1)).isEqualTo(mutableMessage);
|
412 | 419 | assertThat(messages.get(2)).isEqualTo(adviceMessage);
|
| 420 | + assertThat(messages.get(4)).isEqualTo(delayMessage); |
413 | 421 | Message<?> errorMessageResult = messages.get(3);
|
414 | 422 | assertThat(errorMessageResult.getHeaders()).isEqualTo(errorMessage.getHeaders());
|
415 | 423 | assertThat(errorMessageResult).isInstanceOf(ErrorMessage.class);
|
|
0 commit comments