QPID-7609: Address some review comments from Alex Rudyy <orudyy@apache.org>
diff --git a/systests/src/main/java/org/apache/qpid/test/utils/JmsProvider.java b/systests/src/main/java/org/apache/qpid/test/utils/JmsProvider.java
index a4dbc49..661905d 100644
--- a/systests/src/main/java/org/apache/qpid/test/utils/JmsProvider.java
+++ b/systests/src/main/java/org/apache/qpid/test/utils/JmsProvider.java
@@ -36,8 +36,6 @@
public interface JmsProvider
{
- InitialContext getInitialContext() throws NamingException;
-
ConnectionFactory getConnectionFactory() throws NamingException;
ConnectionFactory getConnectionFactory(Map<String, String> options) throws NamingException;
diff --git a/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java b/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
index e7abdba..e237b45 100755
--- a/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
+++ b/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
@@ -217,11 +217,6 @@
}
}
- public InitialContext getInitialContext() throws NamingException
- {
- return _jmsProvider.getInitialContext();
- }
-
/**
* Get the default connection factory for the currently used broker
* Default factory is "local"
diff --git a/systests/src/main/java/org/apache/qpid/test/utils/QpidJmsClient0xProvider.java b/systests/src/main/java/org/apache/qpid/test/utils/QpidJmsClient0xProvider.java
index f9e865c..af4bbe6 100644
--- a/systests/src/main/java/org/apache/qpid/test/utils/QpidJmsClient0xProvider.java
+++ b/systests/src/main/java/org/apache/qpid/test/utils/QpidJmsClient0xProvider.java
@@ -67,12 +67,6 @@
}
@Override
- public InitialContext getInitialContext() throws NamingException
- {
- return new InitialContext(_initialContextEnvironment);
- }
-
- @Override
public ConnectionFactory getConnectionFactory() throws NamingException
{
if (Boolean.getBoolean(QpidBrokerTestCase.PROFILE_USE_SSL))
@@ -113,8 +107,7 @@
throws NamingException
{
-
- return (ConnectionFactory) getInitialContext().lookup(factoryName);
+ return (ConnectionFactory) new InitialContext(_initialContextEnvironment).lookup(factoryName);
}
@Override
diff --git a/systests/src/main/java/org/apache/qpid/test/utils/QpidJmsClientProvider.java b/systests/src/main/java/org/apache/qpid/test/utils/QpidJmsClientProvider.java
index b612739..f336e40 100644
--- a/systests/src/main/java/org/apache/qpid/test/utils/QpidJmsClientProvider.java
+++ b/systests/src/main/java/org/apache/qpid/test/utils/QpidJmsClientProvider.java
@@ -56,12 +56,6 @@
}
@Override
- public InitialContext getInitialContext() throws NamingException
- {
- return new InitialContext(_initialContextEnvironment);
- }
-
- @Override
public ConnectionFactory getConnectionFactory() throws NamingException
{
return getConnectionFactory(Collections.<String, String>emptyMap());
@@ -170,7 +164,7 @@
appendOptions(options, stem);
_initialContextEnvironment.put("connectionfactory.default.ssl", stem.toString());
}
- return (ConnectionFactory) getInitialContext().lookup(factoryName);
+ return (ConnectionFactory) new InitialContext(_initialContextEnvironment).lookup(factoryName);
}
@Override
diff --git a/systests/src/test/java/org/apache/qpid/client/failover/FailoverBehaviourTest.java b/systests/src/test/java/org/apache/qpid/client/failover/FailoverBehaviourTest.java
index d3dac04..5fa7b2d 100644
--- a/systests/src/test/java/org/apache/qpid/client/failover/FailoverBehaviourTest.java
+++ b/systests/src/test/java/org/apache/qpid/client/failover/FailoverBehaviourTest.java
@@ -114,7 +114,7 @@
private JMSException _exceptionListenerException;
@Override
- protected void setUp() throws Exception
+ public void setUp() throws Exception
{
super.setUp();
diff --git a/systests/src/test/java/org/apache/qpid/test/client/failover/FailoverTest.java b/systests/src/test/java/org/apache/qpid/test/client/failover/FailoverTest.java
index fe93d83..32f62b6 100644
--- a/systests/src/test/java/org/apache/qpid/test/client/failover/FailoverTest.java
+++ b/systests/src/test/java/org/apache/qpid/test/client/failover/FailoverTest.java
@@ -60,7 +60,7 @@
private Random rand;
@Override
- protected void setUp() throws Exception
+ public void setUp() throws Exception
{
super.setUp();
diff --git a/systests/src/test/java/org/apache/qpid/test/unit/xa/FaultTest.java b/systests/src/test/java/org/apache/qpid/test/unit/xa/FaultTest.java
index 3761803..117ba23 100644
--- a/systests/src/test/java/org/apache/qpid/test/unit/xa/FaultTest.java
+++ b/systests/src/test/java/org/apache/qpid/test/unit/xa/FaultTest.java
@@ -32,7 +32,6 @@
import javax.transaction.xa.XAResource;
import javax.transaction.xa.Xid;
-import junit.framework.TestSuite;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -66,45 +65,30 @@
*/
private static QueueSession _nonXASession = null;
- /**
- * the queue name
- */
- private static final String QUEUENAME = "xaQueue";
/** ----------------------------------------------------------------------------------- **/
/**
* ----------------------------- JUnit support ----------------------------------------- *
*/
- /**
- * Gets the test suite tests
- *
- * @return the test suite tests
- */
- public static TestSuite getSuite()
- {
- return new TestSuite(QueueTest.class);
- }
-
- /**
- * Run the test suite.
- *
- * @param args Any command line arguments specified to this class.
- */
- public static void main(String args[])
- {
- junit.textui.TestRunner.run(getSuite());
- }
-
@Override
public void tearDown() throws Exception
{
- if (!isBroker08())
+ try
{
- _xaqueueConnection.close();
- _queueConnection.close();
+ if (_xaqueueConnection != null)
+ {
+ _xaqueueConnection.close();
+ }
+ if (_queueConnection != null)
+ {
+ _queueConnection.close();
+ }
}
- super.tearDown();
+ finally
+ {
+ super.tearDown();
+ }
}
/**
@@ -112,13 +96,13 @@
*/
public void init() throws Exception
{
- if (!isBroker08())
+ if (isBroker010())
{
- _queue = (Queue) getInitialContext().lookup(QUEUENAME);
_queueFactory = (XAQueueConnectionFactory) getConnectionFactory();
- _xaqueueConnection = _queueFactory.createXAQueueConnection("guest", "guest");
+ _xaqueueConnection = _queueFactory.createXAQueueConnection(GUEST_USERNAME, GUEST_PASSWORD);
XAQueueSession session = _xaqueueConnection.createXAQueueSession();
- _queueConnection = _queueFactory.createQueueConnection("guest","guest");
+ _queue = session.createQueue(getTestQueueName());
+ _queueConnection = _queueFactory.createQueueConnection(GUEST_USERNAME, GUEST_PASSWORD);
_nonXASession = _queueConnection.createQueueSession(true, Session.AUTO_ACKNOWLEDGE);
init(session, _queue);
}
diff --git a/systests/src/test/java/org/apache/qpid/test/unit/xa/QueueTest.java b/systests/src/test/java/org/apache/qpid/test/unit/xa/QueueTest.java
index 307cb39..941f973 100644
--- a/systests/src/test/java/org/apache/qpid/test/unit/xa/QueueTest.java
+++ b/systests/src/test/java/org/apache/qpid/test/unit/xa/QueueTest.java
@@ -33,7 +33,6 @@
import javax.transaction.xa.XAResource;
import javax.transaction.xa.Xid;
-import junit.framework.TestSuite;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -53,12 +52,12 @@
/**
* standard xa queue connection
*/
- private static XAQueueConnection _xaqueueConnection= null;
+ private static XAQueueConnection _xaqueueConnection = null;
/**
* standard xa queue connection
*/
- private static QueueConnection _queueConnection=null;
+ private static QueueConnection _queueConnection = null;
/**
@@ -66,109 +65,45 @@
*/
private static QueueSession _nonXASession = null;
- /**
- * the queue name
- */
- private static final String QUEUENAME = "xaQueue";
/** ----------------------------------------------------------------------------------- **/
/**
* ----------------------------- JUnit support ----------------------------------------- *
*/
- /**
- * Gets the test suite tests
- *
- * @return the test suite tests
- */
- public static TestSuite getSuite()
- {
- return new TestSuite(QueueTest.class);
- }
-
- /**
- * Run the test suite.
- *
- * @param args Any command line arguments specified to this class.
- */
- public static void main(String args[])
- {
- junit.textui.TestRunner.run(getSuite());
- }
-
+ @Override
public void tearDown() throws Exception
{
- if (!isBroker08())
+ try
{
- try
+ if (_xaqueueConnection != null)
{
_xaqueueConnection.close();
+ }
+ if (_queueConnection != null)
+ {
_queueConnection.close();
}
- catch (Exception e)
- {
- fail("Exception thrown when cleaning standard connection: " + e.getStackTrace());
- }
}
- super.tearDown();
+ finally
+ {
+ super.tearDown();
+ }
}
/**
* Initialize standard actors
*/
- public void init()
+ public void init() throws Exception
{
if (!isBroker08())
{
- // lookup test queue
- try
- {
- _queue = (Queue) getInitialContext().lookup(QUEUENAME);
- }
- catch (Exception e)
- {
- fail("cannot lookup test queue " + e.getMessage());
- }
-
- // lookup connection factory
- try
- {
- _queueFactory = (XAQueueConnectionFactory) getConnectionFactory();
- }
- catch (Exception e)
- {
- fail("enable to lookup connection factory ");
- }
- // create standard connection
- try
- {
- _xaqueueConnection= getNewQueueXAConnection();
- }
- catch (JMSException e)
- {
- fail("cannot create queue connection: " + e.getMessage());
- }
- // create xa session
- XAQueueSession session = null;
- try
- {
- session = _xaqueueConnection.createXAQueueSession();
- }
- catch (JMSException e)
- {
- fail("cannot create queue session: " + e.getMessage());
- }
- // create a standard session
- try
- {
- _queueConnection = _queueFactory.createQueueConnection("guest", "guest");
- _nonXASession = _queueConnection.createQueueSession(true, Session.AUTO_ACKNOWLEDGE);
- }
- catch (JMSException e)
- {
- _logger.error("cannot create queue session",e);
- fail("cannot create queue session: " + e.getMessage());
- }
+ _queueFactory = (XAQueueConnectionFactory) getConnectionFactory();
+ _xaqueueConnection= getNewQueueXAConnection();
+ final XAQueueSession session = _xaqueueConnection.createXAQueueSession();
+ _queue = session.createQueue(getTestQueueName());
+ _queueConnection = _queueFactory.createQueueConnection(GUEST_USERNAME, GUEST_PASSWORD);
+ _nonXASession = _queueConnection.createQueueSession(true, Session.AUTO_ACKNOWLEDGE);
init(session, _queue);
}
}
diff --git a/systests/src/test/java/org/apache/qpid/test/unit/xa/TopicTest.java b/systests/src/test/java/org/apache/qpid/test/unit/xa/TopicTest.java
index b29267f..33a2149 100644
--- a/systests/src/test/java/org/apache/qpid/test/unit/xa/TopicTest.java
+++ b/systests/src/test/java/org/apache/qpid/test/unit/xa/TopicTest.java
@@ -26,7 +26,6 @@
import javax.transaction.xa.XAResource;
import javax.transaction.xa.Xid;
-import junit.framework.TestSuite;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -77,26 +76,7 @@
/** ----------------------------- JUnit support ----------------------------------------- **/
/** -------------------------------------------------------------------------------------- **/
- /**
- * Gets the test suite tests
- *
- * @return the test suite tests
- */
- public static TestSuite getSuite()
- {
- return new TestSuite(TopicTest.class);
- }
-
- /**
- * Run the test suite.
- *
- * @param args Any command line arguments specified to this class.
- */
- public static void main(String args[])
- {
- junit.textui.TestRunner.run(getSuite());
- }
-
+ @Override
public void tearDown() throws Exception
{
if (!isBroker08())
@@ -117,56 +97,17 @@
/**
* Initialize standard actors
*/
- public void init()
+ public void init() throws Exception
{
if (!isBroker08())
{
setTestClientSystemProperty(ClientProperties.MAX_PREFETCH_PROP_NAME, "1");
// lookup test queue
- try
- {
- _topic = (Topic) getInitialContext().lookup(TOPICNAME);
- }
- catch (Exception e)
- {
- fail("cannot lookup test topic " + e.getMessage());
- }
- // lookup connection factory
- try
- {
- _topicFactory = (XATopicConnectionFactory) getConnectionFactory();
- }
- catch (Exception e)
- {
- fail("enable to lookup connection factory ");
- }
- // create standard connection
- try
- {
- _topicConnection = getNewTopicXAConnection();
- }
- catch (JMSException e)
- {
- fail("cannot create queue connection: " + e.getMessage());
- }
- // create standard session
- try
- {
- _session = _topicConnection.createXATopicSession();
- }
- catch (JMSException e)
- {
- fail("cannot create queue session: " + e.getMessage());
- }
- // create a standard session
- try
- {
- _nonXASession = _topicConnection.createTopicSession(true, Session.AUTO_ACKNOWLEDGE);
- }
- catch (JMSException e)
- {
- _logger.error("Error creating topic session", e);
- }
+ _topicFactory = (XATopicConnectionFactory) getConnectionFactory();
+ _topicConnection = getNewTopicXAConnection();
+ _session = _topicConnection.createXATopicSession();
+ _topic = _session.createTopic(getTestQueueName());
+ _nonXASession = _topicConnection.createTopicSession(true, Session.AUTO_ACKNOWLEDGE);
init(_session, _topic);
}
}
diff --git a/systests/src/test/java/org/apache/qpid/test/utils/FailoverBaseCase.java b/systests/src/test/java/org/apache/qpid/test/utils/FailoverBaseCase.java
index d0c77e4..efadf55 100644
--- a/systests/src/test/java/org/apache/qpid/test/utils/FailoverBaseCase.java
+++ b/systests/src/test/java/org/apache/qpid/test/utils/FailoverBaseCase.java
@@ -20,9 +20,13 @@
*/
package org.apache.qpid.test.utils;
+import java.util.ArrayList;
+import java.util.List;
import java.util.concurrent.CountDownLatch;
+import javax.jms.Connection;
import javax.jms.ConnectionFactory;
+import javax.jms.IllegalStateException;
import javax.jms.JMSException;
import javax.naming.NamingException;
@@ -43,9 +47,10 @@
protected int _port;
protected int _alternativePort;
private ConnectionFactory _connectionFactory;
+ private final List<Connection> _connections = new ArrayList<>();
@Override
- protected void setUp() throws Exception
+ public void setUp() throws Exception
{
super.setUp();
_failoverComplete = new CountDownLatch(1);
@@ -60,6 +65,28 @@
setTestSystemProperty("test.port", String.valueOf(_port));
}
+ @Override
+ protected void tearDown() throws Exception
+ {
+ try
+ {
+ for(Connection c : _connections)
+ {
+ try
+ {
+ c.close();
+ }
+ catch (JMSException e)
+ {
+ }
+ }
+ }
+ finally
+ {
+ super.tearDown();
+ }
+ }
+
/**
* We are using failover factories
*
@@ -87,7 +114,9 @@
@Override
public javax.jms.Connection getConnection() throws JMSException, NamingException
{
- return getConnectionFactory().createConnection(GUEST_USERNAME, GUEST_PASSWORD);
+ final Connection connection = getConnectionFactory().createConnection(GUEST_USERNAME, GUEST_PASSWORD);
+ _connections.add(connection);
+ return connection;
}
public void failDefaultBroker()