From 5d4df0cf2cf69f34b1e59bd01988f0ea20f9c268 Mon Sep 17 00:00:00 2001 From: Nikita Date: Mon, 27 Jul 2015 16:25:48 +0300 Subject: [PATCH] RTopic innerPublish test added. #154 --- .../java/org/redisson/RedissonTopicTest.java | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/src/test/java/org/redisson/RedissonTopicTest.java b/src/test/java/org/redisson/RedissonTopicTest.java index d35cf417a..ab3690a86 100644 --- a/src/test/java/org/redisson/RedissonTopicTest.java +++ b/src/test/java/org/redisson/RedissonTopicTest.java @@ -47,6 +47,41 @@ public class RedissonTopicTest { } + @Test + public void testInnerPublish() throws InterruptedException { + + Redisson redisson1 = BaseTest.createInstance(); + final RTopic topic1 = redisson1.getTopic("topic1"); + final CountDownLatch messageRecieved = new CountDownLatch(3); + int listenerId = topic1.addListener(new MessageListener() { + @Override + public void onMessage(String channel, Message msg) { + Assert.assertEquals(msg, new Message("test")); + messageRecieved.countDown(); + } + }); + + Redisson redisson2 = BaseTest.createInstance(); + final RTopic topic2 = redisson2.getTopic("topic2"); + topic2.addListener(new MessageListener() { + @Override + public void onMessage(String channel, Message msg) { + messageRecieved.countDown(); + Message m = new Message("test"); + if (!msg.equals(m)) { + topic1.publish(m); + topic2.publish(m); + } + } + }); + topic2.publish(new Message("123")); + + messageRecieved.await(); + + redisson1.shutdown(); + redisson2.shutdown(); + } + @Test public void testStatus() throws InterruptedException { Redisson redisson = BaseTest.createInstance();