summaryrefslogtreecommitdiff
path: root/qpid/java/broker/src/test
diff options
context:
space:
mode:
authorMartin Ritchie <ritchiem@apache.org>2010-05-18 14:42:51 +0000
committerMartin Ritchie <ritchiem@apache.org>2010-05-18 14:42:51 +0000
commit8dba7b7ab260e158765578c6fa3d65302b3e2abc (patch)
treebfeb7e89c84e2f21b0da232fa9ae455a8cc323d1 /qpid/java/broker/src/test
parent617b6d040067cf6ecd526ecd4c333c2ec1233c96 (diff)
downloadqpid-python-8dba7b7ab260e158765578c6fa3d65302b3e2abc.tar.gz
QPID-2584 : Convert all TimerTasks to HouseKeepingTasks for running in the VHost thread pool.
Update VirtualHost and Configuration to allow configuration and testing of VirtualHostHouseKeepingPlugins. Added system test to validate the loading of VHPlugins is performed correctly git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@945678 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/broker/src/test')
-rw-r--r--qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/VirtualHostConfigurationTest.java79
1 files changed, 79 insertions, 0 deletions
diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/VirtualHostConfigurationTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/VirtualHostConfigurationTest.java
index 683343aa14..c1e2406167 100644
--- a/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/VirtualHostConfigurationTest.java
+++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/VirtualHostConfigurationTest.java
@@ -129,8 +129,87 @@ public class VirtualHostConfigurationTest extends TestCase
assertEquals(3, bTest.getMaximumMessageAge());
ApplicationRegistry.remove();
+ }
+
+ /**
+ * Test that the house keeping pool sizes is correctly processed
+ *
+ * @throws Exception
+ */
+ public void testHouseKeepingThreadCount() throws Exception
+ {
+ int initialPoolSize = 10;
+
+ configXml.addProperty("virtualhost.testHouseKeepingThreadCount.name", "testHouseKeepingThreadCount");
+ configXml.addProperty("virtualhost.testHouseKeepingThreadCount.housekeeping.poolSize",
+ initialPoolSize);
+
+ VirtualHostConfiguration config =
+ new VirtualHostConfiguration("testHouseKeepingThreadCount",
+ configXml.subset("virtualhost.testHouseKeepingThreadCount"));
+ VirtualHost vhost =
+ ApplicationRegistry.getInstance().createVirtualHost(config);
+
+ assertEquals("HouseKeeping PoolSize not set correctly.",
+ initialPoolSize, vhost.getHouseKeepingPoolSize());
+
+ ApplicationRegistry.remove();
+ }
+
+ /**
+ * Test default house keeping tasks
+ *
+ * @throws Exception
+ */
+ public void testDefaultHouseKeepingTasks() throws Exception
+ {
+ configXml.addProperty("virtualhost.testDefaultHouseKeepingTasks.name", "testDefaultHouseKeepingTasks");
+ VirtualHostConfiguration config =
+ new VirtualHostConfiguration("testDefaultHouseKeepingTasks",
+ configXml.subset("virtualhost.testDefaultHouseKeepingTasks"));
+ VirtualHost vhost =
+ ApplicationRegistry.getInstance().createVirtualHost(config);
+ assertEquals("Default houseKeeping task count incorrect.", 2,
+ vhost.getHouseKeepingTaskCount());
+ // Currently the two are tasks:
+ // ExpiredMessageTask from VirtualHost
+ // UpdateTask from the QMF ManagementExchange
+
+
+ ApplicationRegistry.remove();
}
+ /**
+ * Test that we can dynamically change the thread pool size
+ *
+ * @throws Exception
+ */
+ public void testDynamicHouseKeepingPoolSizeChange() throws Exception
+ {
+ int initialPoolSize = 10;
+
+ configXml.addProperty("virtualhost.testDynamicHouseKeepingPoolSizeChange.name", "testDynamicHouseKeepingPoolSizeChange");
+ configXml.addProperty("virtualhost.testDynamicHouseKeepingPoolSizeChange.housekeeping.poolSize",
+ initialPoolSize);
+
+ VirtualHostConfiguration config =
+ new VirtualHostConfiguration("testHouseKeepingThreadCount",
+ configXml.subset("virtualhost.testDynamicHouseKeepingPoolSizeChange"));
+ VirtualHost vhost =
+ ApplicationRegistry.getInstance().createVirtualHost(config);
+
+ assertEquals("HouseKeeping PoolSize not set correctly.",
+ initialPoolSize, vhost.getHouseKeepingPoolSize());
+
+ vhost.setHouseKeepingPoolSize(1);
+
+ assertEquals("HouseKeeping PoolSize not correctly change.",
+ 1, vhost.getHouseKeepingPoolSize());
+
+ ApplicationRegistry.remove();
+ }
+
+
}