package com.mcafee; import static org.junit.Assert.*; import java.util.ArrayList; import javax.jms.JMSException; import javax.jms.TopicSubscriber; import javax.naming.InitialContext; import org.junit.After; import org.junit.Before; import org.junit.Test; /** * * @author Gursev Singh Kalra @ McAfee, Inc. * */ public class JmsDurableSubscriberManipulatorTest { private InitialContext ctx; private String durableSubscriberTopic = "durableSubscriberTopic"; private JmsDurableSubscriberManipulator manipulator = null; private String connFactName = "ConnectionFactory"; TopicSubscriber tsub; private String durableSubscriberName = "durableSubscriberName"; private String clientId = "gursev"; ArrayList<TopicSubscriber> tsAlist; @Before public void setUp() throws Exception { JmsInitialContextFactory contextFactory = new JmsInitialContextFactory("org.apache.activemq.jndi.ActiveMQInitialContextFactory", "tcp://localhost:61616"); contextFactory.addConnectionFactory(connFactName); contextFactory.addTopic(durableSubscriberTopic, "jms." + durableSubscriberTopic); ctx = contextFactory.getInitialContext(); manipulator = new JmsDurableSubscriberManipulator(ctx, durableSubscriberTopic, connFactName); manipulator.init(clientId); } @After public void tearDown() throws Exception { manipulator.close(); } @Test public void testCreateDurableSubscribers() throws JmsDiggerException { int count = 1; tsAlist = new ArrayList<TopicSubscriber>(); tsAlist = manipulator.createDurableSubscribers(count); assertEquals(count, tsAlist.size()); } @Test public void testCreateRandDurableSubscriber() throws JmsDiggerException, JMSException { tsub = null; tsub = manipulator.createRandDurableSubscriber(); assertNotNull(tsub); } @Test public void testCreateDurableSubscriberWithName() throws JmsDiggerException { tsub = null; tsub = manipulator.createDurableSubscriber(durableSubscriberName); assertNotNull(tsub); } @Test public void testCreateDurableSubscriberWithNameMessageSelectorAndNoLocal() throws JmsDiggerException { tsub = null; tsub = manipulator.createDurableSubscriber(durableSubscriberName, "test", true); assertNotNull(tsub); } @Test public void testEraseDurableSubscriber() throws JmsDiggerException { manipulator.createDurableSubscriber(durableSubscriberName+"Eraseme", "test", true); manipulator.close(); manipulator.init(clientId); manipulator.eraseDurableSubscriber(durableSubscriberName+"Eraseme"); } }