[jboss-cvs] JBoss Messaging SVN: r4430 - in trunk: tests/src/org/jboss/messaging/tests/unit/jms/client and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Jun 11 12:16:11 EDT 2008


Author: jmesnil
Date: 2008-06-11 12:16:11 -0400 (Wed, 11 Jun 2008)
New Revision: 4430

Added:
   trunk/tests/src/org/jboss/messaging/tests/unit/jms/client/JBossConnectionTest.java
Modified:
   trunk/src/main/org/jboss/messaging/jms/client/JBossConnection.java
Log:
added unit test for JBossConnection (WIP)

Modified: trunk/src/main/org/jboss/messaging/jms/client/JBossConnection.java
===================================================================
--- trunk/src/main/org/jboss/messaging/jms/client/JBossConnection.java	2008-06-11 13:28:32 UTC (rev 4429)
+++ trunk/src/main/org/jboss/messaging/jms/client/JBossConnection.java	2008-06-11 16:16:11 UTC (rev 4430)
@@ -66,7 +66,7 @@
 
    static final int TYPE_GENERIC_CONNECTION = 0;
    
-   static final int TYPE_QUEUE_CONNECTION = 1;
+   public static final int TYPE_QUEUE_CONNECTION = 1;
    
    static final int TYPE_TOPIC_CONNECTION = 2;
    

Added: trunk/tests/src/org/jboss/messaging/tests/unit/jms/client/JBossConnectionTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/jms/client/JBossConnectionTest.java	                        (rev 0)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/jms/client/JBossConnectionTest.java	2008-06-11 16:16:11 UTC (rev 4430)
@@ -0,0 +1,188 @@
+/*
+ * JBoss, Home of Professional Open Source
+ *
+ * Distributable under LGPL license.
+ * See terms of license at gnu.org.
+ */
+package org.jboss.messaging.tests.unit.jms.client;
+
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.createStrictMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+import static org.jboss.messaging.tests.util.RandomUtil.randomString;
+
+import javax.jms.JMSException;
+
+import junit.framework.TestCase;
+
+import org.easymock.EasyMock;
+import org.jboss.messaging.core.client.ClientConnection;
+import org.jboss.messaging.jms.client.JBossConnection;
+import org.jboss.messaging.tests.util.RandomUtil;
+
+/**
+ * @author <a href="mailto:jmesnil at redhat.com">Jeff Mesnil</a>
+ * 
+ * @version <tt>$Revision$</tt>
+ * 
+ */
+public class JBossConnectionTest extends TestCase
+{
+   // Constants -----------------------------------------------------
+
+   // Attributes ----------------------------------------------------
+
+   // Static --------------------------------------------------------
+
+   // Constructors --------------------------------------------------
+
+   // Public --------------------------------------------------------
+
+   public void testStart() throws Exception
+   {
+      ClientConnection clientConn = createStrictMock(ClientConnection.class);
+      clientConn.start();
+      expectLastCall().once();
+
+      replay(clientConn);
+
+      JBossConnection connection = new JBossConnection(clientConn,
+            JBossConnection.TYPE_QUEUE_CONNECTION, null, -1);
+
+      connection.start();
+
+      verify(clientConn);
+   }
+
+   public void testStop() throws Exception
+   {
+      ClientConnection clientConn = createStrictMock(ClientConnection.class);
+      clientConn.stop();
+      expectLastCall().once();
+
+      replay(clientConn);
+
+      JBossConnection connection = new JBossConnection(clientConn,
+            JBossConnection.TYPE_QUEUE_CONNECTION, null, -1);
+
+      connection.stop();
+
+      verify(clientConn);
+   }
+
+   public void testUsingClosedConnection() throws Exception
+   {
+      ClientConnection clientConn = createStrictMock(ClientConnection.class);
+      clientConn.close();
+      expectLastCall().once();
+      expect(clientConn.isClosed()).andReturn(true);
+      
+      replay(clientConn);
+
+      JBossConnection connection = new JBossConnection(clientConn,
+            JBossConnection.TYPE_QUEUE_CONNECTION, null, -1);
+      connection.close();
+
+      try
+      {
+         connection.getClientID();
+         fail("should throw a JMSException");
+      } catch (JMSException e)
+      {
+      }
+
+      verify(clientConn);
+   }
+
+   public void testGetClientID() throws Exception
+   {
+      String clientID = randomString();
+      ClientConnection clientConn = createStrictMock(ClientConnection.class);
+      expect(clientConn.isClosed()).andReturn(false);
+      replay(clientConn);
+
+      JBossConnection connection = new JBossConnection(clientConn,
+            JBossConnection.TYPE_QUEUE_CONNECTION, clientID, -1);
+
+      assertEquals(clientID, connection.getClientID());
+
+      verify(clientConn);
+   }
+
+   public void testSetClientID() throws Exception
+   {
+      ClientConnection clientConn = createStrictMock(ClientConnection.class);
+      expect(clientConn.isClosed()).andStubReturn(false);
+
+      replay(clientConn);
+
+      JBossConnection connection = new JBossConnection(clientConn,
+            JBossConnection.TYPE_QUEUE_CONNECTION, null, -1);
+      String newClientID = randomString();
+      connection.setClientID(newClientID);
+
+      assertEquals(newClientID, connection.getClientID());
+
+      verify(clientConn);
+   }
+
+   public void testSetClientIDFailsIfClientIDAlreadyExists() throws Exception
+   {
+      ClientConnection clientConn = createStrictMock(ClientConnection.class);
+      expect(clientConn.isClosed()).andStubReturn(false);
+
+      replay(clientConn);
+
+      JBossConnection connection = new JBossConnection(clientConn,
+            JBossConnection.TYPE_QUEUE_CONNECTION, null, -1);
+      String clientID = randomString();
+      connection.setClientID(clientID);
+
+      assertEquals(clientID, connection.getClientID());
+
+      try
+      {
+         connection.setClientID(randomString());
+         fail("should throw a JMS Exception");
+      } catch (JMSException e)
+      {
+      }
+
+      verify(clientConn);
+   }
+
+   public void testSetClientIDFailsIfConnectionAlreadyUsed() throws Exception
+   {
+      ClientConnection clientConn = createStrictMock(ClientConnection.class);
+      expect(clientConn.isClosed()).andStubReturn(false);
+      clientConn.start();
+      expectLastCall().once();
+
+      replay(clientConn);
+
+      JBossConnection connection = new JBossConnection(clientConn,
+            JBossConnection.TYPE_QUEUE_CONNECTION, null, -1);
+      connection.start();
+
+      try
+      {
+         connection.setClientID(randomString());
+         fail("should throw a JMS Exception");
+      } catch (JMSException e)
+      {
+      }
+
+      verify(clientConn);
+   }
+
+   // Package protected ---------------------------------------------
+
+   // Protected -----------------------------------------------------
+
+   // Private -------------------------------------------------------
+
+   // Inner classes -------------------------------------------------
+}




More information about the jboss-cvs-commits mailing list