diff options
Diffstat (limited to 'java/broker/src')
| -rw-r--r-- | java/broker/src/test/java/org/apache/qpid/server/util/InternalBrokerBaseCase.java | 63 | ||||
| -rw-r--r-- | java/broker/src/test/java/org/apache/qpid/server/util/TestApplicationRegistry.java | 21 |
2 files changed, 64 insertions, 20 deletions
diff --git a/java/broker/src/test/java/org/apache/qpid/server/util/InternalBrokerBaseCase.java b/java/broker/src/test/java/org/apache/qpid/server/util/InternalBrokerBaseCase.java index 20bad0fb69..7e33110b03 100644 --- a/java/broker/src/test/java/org/apache/qpid/server/util/InternalBrokerBaseCase.java +++ b/java/broker/src/test/java/org/apache/qpid/server/util/InternalBrokerBaseCase.java @@ -31,9 +31,11 @@ import org.apache.qpid.framing.ContentHeaderBody; import org.apache.qpid.framing.FieldTable; import org.apache.qpid.framing.abstraction.MessagePublishInfo; import org.apache.qpid.server.AMQChannel; +import org.apache.qpid.server.logging.StartupRootMessageLogger; import org.apache.qpid.server.logging.actors.CurrentActor; import org.apache.qpid.server.configuration.ServerConfiguration; import org.apache.qpid.server.exchange.Exchange; +import org.apache.qpid.server.logging.actors.TestLogActor; import org.apache.qpid.server.protocol.InternalTestProtocolSession; import org.apache.qpid.server.queue.AMQQueue; import org.apache.qpid.server.queue.AMQQueueFactory; @@ -54,20 +56,44 @@ public class InternalBrokerBaseCase extends TestCase protected VirtualHost _virtualHost; protected AMQQueue _queue; protected AMQShortString QUEUE_NAME; + protected ServerConfiguration _configuration; public void setUp() throws Exception { super.setUp(); + + createBroker(); + } + + protected void createBroker() throws Exception + { + CurrentActor.set(new TestLogActor(new StartupRootMessageLogger())); + PropertiesConfiguration configuration = new PropertiesConfiguration(); configuration.setProperty("virtualhosts.virtualhost.name", "test"); configuration.setProperty("virtualhosts.virtualhost.test.store.class", TestableMemoryMessageStore.class.getName()); - _registry = new TestApplicationRegistry(new ServerConfiguration(configuration)); + + configuration.setProperty("virtualhosts.virtualhost.name", getName()); + configuration.setProperty("virtualhosts.virtualhost."+getName()+".store.class", TestableMemoryMessageStore.class.getName()); + + _configuration = new ServerConfiguration(configuration); + + configure(); + + _registry = new TestApplicationRegistry(_configuration); ApplicationRegistry.initialise(_registry); - _virtualHost = _registry.getVirtualHostRegistry().getVirtualHost("test"); + _registry.getVirtualHostRegistry().setDefaultVirtualHostName(getName()); + _virtualHost = _registry.getVirtualHostRegistry().getVirtualHost(getName()); + + QUEUE_NAME = new AMQShortString("test"); + // Create a queue on the test Vhost.. this will aid in diagnosing duff tests + // as the ExpiredMessage Task will log with the test Name. + AMQQueueFactory.createAMQQueueImpl(QUEUE_NAME, false, new AMQShortString("testowner"), + false, false, _virtualHost, null); + _virtualHost = _registry.getVirtualHostRegistry().getVirtualHost("test"); _messageStore = _virtualHost.getMessageStore(); - QUEUE_NAME = new AMQShortString("test"); _queue = AMQQueueFactory.createAMQQueueImpl(QUEUE_NAME, false, new AMQShortString("testowner"), false, false, _virtualHost, null); @@ -85,21 +111,38 @@ public class InternalBrokerBaseCase extends TestCase _session.addChannel(_channel); } - public void tearDown() throws Exception + protected void configure() + { + // Allow other tests to override configuration + } + + protected void stopBroker() { try { + //Remove the ProtocolSession Actor added during createBroker CurrentActor.remove(); } finally { - try - { - ApplicationRegistry.remove(); - } - finally + ApplicationRegistry.remove(); + } + } + + + public void tearDown() throws Exception + { + try + { + stopBroker(); + } + finally + { + super.tearDown(); + // Purge Any erroneously added actors + while (CurrentActor.get() != null) { - super.tearDown(); + CurrentActor.remove(); } } } diff --git a/java/broker/src/test/java/org/apache/qpid/server/util/TestApplicationRegistry.java b/java/broker/src/test/java/org/apache/qpid/server/util/TestApplicationRegistry.java index 48080cedb7..af8997cf40 100644 --- a/java/broker/src/test/java/org/apache/qpid/server/util/TestApplicationRegistry.java +++ b/java/broker/src/test/java/org/apache/qpid/server/util/TestApplicationRegistry.java @@ -21,27 +21,28 @@ package org.apache.qpid.server.util; import org.apache.commons.configuration.ConfigurationException; -import org.apache.commons.configuration.PropertiesConfiguration; import org.apache.qpid.server.configuration.ServerConfiguration; import org.apache.qpid.server.registry.ApplicationRegistry; +import org.apache.qpid.server.security.auth.database.PropertiesPrincipalDatabaseManager; + +import java.util.Properties; -import org.apache.qpid.server.store.TestableMemoryMessageStore; public class TestApplicationRegistry extends ApplicationRegistry { - public TestApplicationRegistry() throws ConfigurationException + public TestApplicationRegistry(ServerConfiguration config) throws ConfigurationException { - this(new ServerConfiguration(new PropertiesConfiguration())); + super(config); } - public TestApplicationRegistry(ServerConfiguration config) throws ConfigurationException + protected void createDatabaseManager(ServerConfiguration configuration) throws Exception { - super(config); - _configuration.getConfig().setProperty("virtualhosts.virtualhost.name", - "test"); - _configuration.getConfig().setProperty("virtualhosts.virtualhost.test.store.class", - TestableMemoryMessageStore.class.getName()); + Properties users = new Properties(); + users.put("guest","guest"); + users.put("admin","admin"); + _databaseManager = new PropertiesPrincipalDatabaseManager("testPasswordFile", users); } + } |
