[jboss-cvs] JBoss Messaging SVN: r6170 - trunk/tests/src/org/jboss/messaging/tests/integration/client.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Mar 26 09:57:47 EDT 2009
Author: jmesnil
Date: 2009-03-26 09:57:47 -0400 (Thu, 26 Mar 2009)
New Revision: 6170
Modified:
trunk/tests/src/org/jboss/messaging/tests/integration/client/ExpiryAddressTest.java
Log:
expiry address tests
* added test for default settings, sublevel settings & wildcard settings
Modified: trunk/tests/src/org/jboss/messaging/tests/integration/client/ExpiryAddressTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/client/ExpiryAddressTest.java 2009-03-26 09:17:47 UTC (rev 6169)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/client/ExpiryAddressTest.java 2009-03-26 13:57:47 UTC (rev 6170)
@@ -32,9 +32,12 @@
import org.jboss.messaging.core.exception.MessagingException;
import org.jboss.messaging.core.logging.Logger;
import static org.jboss.messaging.core.message.impl.MessageImpl.HDR_ACTUAL_EXPIRY_TIME;
+import static org.jboss.messaging.tests.util.RandomUtil.randomSimpleString;
+
import org.jboss.messaging.core.server.Messaging;
import org.jboss.messaging.core.server.MessagingService;
import org.jboss.messaging.core.settings.impl.AddressSettings;
+import org.jboss.messaging.tests.util.RandomUtil;
import org.jboss.messaging.tests.util.UnitTestCase;
import org.jboss.messaging.utils.SimpleString;
@@ -213,7 +216,97 @@
}
}
+
+ public void testExpireWithDefaultAddressSettings() throws Exception
+ {
+ SimpleString ea = new SimpleString("EA");
+ SimpleString qName = new SimpleString("q1");
+ SimpleString eq = new SimpleString("EA1");
+ AddressSettings addressSettings = new AddressSettings();
+ addressSettings.setExpiryAddress(ea);
+ messagingService.getServer().getAddressSettingsRepository().setDefault(addressSettings);
+ clientSession.createQueue(ea, eq, null, false);
+ clientSession.createQueue(qName, qName, null, false);
+
+ ClientProducer producer = clientSession.createProducer(qName);
+ ClientMessage clientMessage = createTextMessage("heyho!", clientSession);
+ clientMessage.setExpiration(System.currentTimeMillis());
+ producer.send(clientMessage);
+
+ clientSession.start();
+ ClientConsumer clientConsumer = clientSession.createConsumer(qName);
+ ClientMessage m = clientConsumer.receive(500);
+ assertNull(m);
+ clientConsumer.close();
+ clientConsumer = clientSession.createConsumer(eq);
+ m = clientConsumer.receive(500);
+ assertNotNull(m);
+ assertEquals(m.getBody().readString(), "heyho!");
+ m.acknowledge();
+ }
+
+
+ public void testExpireWithWildcardAddressSettings() throws Exception
+ {
+ SimpleString ea = new SimpleString("EA");
+ SimpleString qName = new SimpleString("q1");
+ SimpleString eq = new SimpleString("EA1");
+ AddressSettings addressSettings = new AddressSettings();
+ addressSettings.setExpiryAddress(ea);
+ messagingService.getServer().getAddressSettingsRepository().addMatch("*", addressSettings);
+ clientSession.createQueue(ea, eq, null, false);
+ clientSession.createQueue(qName, qName, null, false);
+
+ ClientProducer producer = clientSession.createProducer(qName);
+ ClientMessage clientMessage = createTextMessage("heyho!", clientSession);
+ clientMessage.setExpiration(System.currentTimeMillis());
+ producer.send(clientMessage);
+
+ clientSession.start();
+ ClientConsumer clientConsumer = clientSession.createConsumer(qName);
+ ClientMessage m = clientConsumer.receive(500);
+ assertNull(m);
+ clientConsumer.close();
+
+ clientConsumer = clientSession.createConsumer(eq);
+ m = clientConsumer.receive(500);
+ assertNotNull(m);
+ assertEquals(m.getBody().readString(), "heyho!");
+ m.acknowledge();
+ }
+
+ public void testExpireWithSublevelAddressSettings() throws Exception
+ {
+ SimpleString address = new SimpleString("prefix.address");
+ SimpleString queue = randomSimpleString();
+ SimpleString expiryAddress = randomSimpleString();
+ SimpleString exipryQueue = randomSimpleString();
+
+ AddressSettings addressSettings = new AddressSettings();
+ addressSettings.setExpiryAddress(expiryAddress);
+ messagingService.getServer().getAddressSettingsRepository().addMatch("prefix.*", addressSettings);
+ clientSession.createQueue(address, queue, false);
+ clientSession.createQueue(expiryAddress, exipryQueue, false);
+
+ ClientProducer producer = clientSession.createProducer(address);
+ ClientMessage clientMessage = createTextMessage("heyho!", clientSession);
+ clientMessage.setExpiration(System.currentTimeMillis());
+ producer.send(clientMessage);
+
+ clientSession.start();
+ ClientConsumer clientConsumer = clientSession.createConsumer(queue);
+ ClientMessage m = clientConsumer.receive(500);
+ assertNull(m);
+ clientConsumer.close();
+
+ clientConsumer = clientSession.createConsumer(exipryQueue);
+ m = clientConsumer.receive(500);
+ assertNotNull(m);
+ assertEquals(m.getBody().readString(), "heyho!");
+ m.acknowledge();
+ }
+
@Override
protected void setUp() throws Exception
{
More information about the jboss-cvs-commits
mailing list