Search in sources :

Example 16 with ITopic

use of com.hazelcast.core.ITopic in project hazelcast by hazelcast.

the class ClientReliableTopicTest method testCreation.

@Test
public void testCreation() {
    ITopic topic = client.getReliableTopic(randomString());
    assertInstanceOf(ClientReliableTopicProxy.class, topic);
}
Also used : ITopic(com.hazelcast.core.ITopic) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test) ParallelTest(com.hazelcast.test.annotation.ParallelTest)

Example 17 with ITopic

use of com.hazelcast.core.ITopic in project hazelcast by hazelcast.

the class ClientReliableTopicTest method removeMessageListener_whenNull.

// ============== removeMessageListener ==============================
@Test(expected = NullPointerException.class)
public void removeMessageListener_whenNull() {
    ITopic topic = client.getReliableTopic(randomString());
    topic.removeMessageListener(null);
}
Also used : ITopic(com.hazelcast.core.ITopic) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test) ParallelTest(com.hazelcast.test.annotation.ParallelTest)

Example 18 with ITopic

use of com.hazelcast.core.ITopic in project hazelcast by hazelcast.

the class ClientReliableTopicTest method testMessageFieldSetCorrectly.

@Test
public void testMessageFieldSetCorrectly() {
    ITopic topic = client.getReliableTopic(randomString());
    final ReliableMessageListenerMock listener = new ReliableMessageListenerMock();
    topic.addMessageListener(listener);
    final long beforePublishTime = Clock.currentTimeMillis();
    final String messageStr = randomString();
    topic.publish(messageStr);
    final long afterPublishTime = Clock.currentTimeMillis();
    assertTrueEventually(new AssertTask() {

        @Override
        public void run() throws Exception {
            assertEquals(1, listener.messages.size());
            Message<String> message = listener.messages.get(0);
            assertEquals(messageStr, message.getMessageObject());
            assertEquals(null, message.getPublishingMember());
            long actualPublishTime = message.getPublishTime();
            assertTrue(actualPublishTime >= beforePublishTime);
            assertTrue(actualPublishTime <= afterPublishTime);
        }
    });
}
Also used : ITopic(com.hazelcast.core.ITopic) Message(com.hazelcast.core.Message) ReliableMessageListenerMock(com.hazelcast.topic.impl.reliable.ReliableMessageListenerMock) AssertTask(com.hazelcast.test.AssertTask) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test) ParallelTest(com.hazelcast.test.annotation.ParallelTest)

Example 19 with ITopic

use of com.hazelcast.core.ITopic in project hazelcast by hazelcast.

the class ClientReliableTopicTest method testListener.

@Test
public void testListener() throws InterruptedException {
    ITopic topic = client.getReliableTopic(randomString());
    int messageCount = 10;
    final CountDownLatch latch = new CountDownLatch(messageCount);
    MessageListener listener = new MessageListener() {

        public void onMessage(Message message) {
            latch.countDown();
        }
    };
    topic.addMessageListener(listener);
    for (int i = 0; i < messageCount; i++) {
        topic.publish(i);
    }
    assertTrue(latch.await(20, TimeUnit.SECONDS));
}
Also used : ITopic(com.hazelcast.core.ITopic) Message(com.hazelcast.core.Message) MessageListener(com.hazelcast.core.MessageListener) CountDownLatch(java.util.concurrent.CountDownLatch) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test) ParallelTest(com.hazelcast.test.annotation.ParallelTest)

Example 20 with ITopic

use of com.hazelcast.core.ITopic in project hazelcast by hazelcast.

the class ClientReliableTopicTest method testAlwaysStartAfterTail.

// makes sure that when a listener is register, we don't see any messages being published before
// it got registered. We'll only see the messages after it got registered.
@Test
public void testAlwaysStartAfterTail() {
    final ITopic topic = client.getReliableTopic(randomString());
    topic.publish("1");
    topic.publish("2");
    topic.publish("3");
    spawn(new Runnable() {

        @Override
        public void run() {
            sleepSeconds(5);
            topic.publish("4");
            topic.publish("5");
            topic.publish("6");
        }
    });
    final ReliableMessageListenerMock listener = new ReliableMessageListenerMock();
    topic.addMessageListener(listener);
    assertTrueEventually(new AssertTask() {

        @Override
        public void run() throws Exception {
            assertEquals(asList("4", "5", "6"), Arrays.asList(listener.objects.toArray()));
        }
    });
}
Also used : ITopic(com.hazelcast.core.ITopic) ReliableMessageListenerMock(com.hazelcast.topic.impl.reliable.ReliableMessageListenerMock) AssertTask(com.hazelcast.test.AssertTask) QuickTest(com.hazelcast.test.annotation.QuickTest) Test(org.junit.Test) ParallelTest(com.hazelcast.test.annotation.ParallelTest)

Aggregations

ITopic (com.hazelcast.core.ITopic)26 ParallelTest (com.hazelcast.test.annotation.ParallelTest)25 QuickTest (com.hazelcast.test.annotation.QuickTest)25 Test (org.junit.Test)25 Message (com.hazelcast.core.Message)8 ReliableMessageListenerMock (com.hazelcast.topic.impl.reliable.ReliableMessageListenerMock)8 MessageListener (com.hazelcast.core.MessageListener)7 AssertTask (com.hazelcast.test.AssertTask)7 HazelcastInstance (com.hazelcast.core.HazelcastInstance)6 CountDownLatch (java.util.concurrent.CountDownLatch)5 Config (com.hazelcast.config.Config)4 ListenerConfig (com.hazelcast.config.ListenerConfig)4 TestHazelcastInstanceFactory (com.hazelcast.test.TestHazelcastInstanceFactory)3 ReliableTopicConfig (com.hazelcast.config.ReliableTopicConfig)2 RingbufferConfig (com.hazelcast.config.RingbufferConfig)2 Member (com.hazelcast.core.Member)2 NightlyTest (com.hazelcast.test.annotation.NightlyTest)2 ArrayList (java.util.ArrayList)2 ExecutorService (java.util.concurrent.ExecutorService)2 HazelcastInstanceImpl (com.hazelcast.instance.HazelcastInstanceImpl)1