[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