org.apache.qpid.test.unit.topic
Class DurableSubscriptionTest

java.lang.Object
  extended by junit.framework.Assert
      extended by junit.framework.TestCase
          extended by org.apache.qpid.test.utils.QpidTestCase
              extended by org.apache.qpid.test.utils.QpidBrokerTestCase
                  extended by org.apache.qpid.test.unit.topic.DurableSubscriptionTest
All Implemented Interfaces:
junit.framework.Test

public class DurableSubscriptionTest
extends QpidBrokerTestCase

Todo:
Code to check that a consumer gets only one particular method could be factored into a re-usable method (as a static on a base test helper class, e.g. TestUtils., Code to create test end-points using session per connection, or all sessions on one connection, to be factored out to make creating this test variation simpler. Want to make this variation available through LocalCircuit, driven by the test model.

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.qpid.test.utils.QpidBrokerTestCase
QpidBrokerTestCase.MessageType
 
Field Summary
 
Fields inherited from class org.apache.qpid.test.utils.QpidBrokerTestCase
_broker, _brokerLanguage, _brokerLogPrefix, _brokerOutputStream, _brokerPersistent, _brokers, _configFile, _connectionFactory, _connections, _initialContext, _interleaveBrokerLog, _output, _outputFile, _testName, BROKER_READY, CONTENT, CPP, DEFAULT_MANAGEMENT_PORT, DEFAULT_MESSAGE_SIZE, DEFAULT_PORT, DEFAULT_SSL_PORT, DEFAULT_VM_PORT, EXTERNAL, INDEX, JAVA, LOGMONITOR_TIMEOUT, QPID_HOME, QpidHome, QUEUE, RECEIVE_TIMEOUT, TOPIC, VM
 
Fields inherited from class org.apache.qpid.test.utils.QpidTestCase
MEMORY_STORE_CLASS_NAME, MS_CLASS_NAME_KEY
 
Constructor Summary
DurableSubscriptionTest()
           
 
Method Summary
 void setUp()
           
 void tearDown()
           
 void testDurabilityAUTOACK()
           
 void testDurabilityAUTOACKSessionPerConnection()
           
 void testDurabilityAUTOACKwithRestartIfPersistent()
           
 void testDurabilityNOACK()
           
 void testDurabilityNOACKSessionPerConnection()
           
 void testDurableSubscribeWithTemporaryTopic()
           
 void testDurableWithInvalidDestination()
          This tests the fix for QPID-1085 Creates a durable subscriber with an invalid destination, checks that the exception is thrown correctly and that the subscription is not created.
 void testDurableWithInvalidSelector()
          This tests the fix for QPID-1085 Creates a durable subscriber with an invalid selector, checks that the exception is thrown correctly and that the subscription is not created.
 void testDurSubAddMessageSelectorNoClose()
           create and register a durable subscriber with no message selector create another durable subscriber with a selector and same name check first subscriber is now closed create a publisher and send messages check messages are recieved correctly
 void testDurSubNoSelectorResubscribeNoClose()
           create and register a durable subscriber with no message selector try to create another durable with the same name, should fail
 void testDurSubSameMessageSelector()
          create and register a durable subscriber with a message selector and then close it create a publisher and send 5 right messages and 5 wrong messages create another durable subscriber with the same selector and name check messages are still there
 void testResubscribeWithChangedSelector()
          Creates a durable subscription with a selector, then changes that selector on resubscription
 void testResubscribeWithChangedSelectorNoClose()
           create and register a durable subscriber with a message selector create another durable subscriber with a different selector and same name check first subscriber is now closed create a publisher and send messages check messages are received correctly
 void testUnsubscribe()
           
 
Methods inherited from class org.apache.qpid.test.utils.QpidBrokerTestCase
cleanBroker, createMessage, createNextMessage, drainQueue, getBroker, getBrokerCommand, getClientConnection, getConfigurationStringProperty, getConnection, getConnection, getConnection, getConnectionFactory, getConnectionFactory, getConnectionURL, getInitialContext, getLogger, getManagementPort, getMessageSize, getPort, getPort, getTestConfigFile, getTestQueue, getTestQueueName, getTestVirtualhostsFile, isBroker010, isBroker08, isBrokerStorePersistent, isCppBroker, isExternalBroker, isJavaBroker, makeVirtualHostPersistent, reloadBrokerSecurityConfig, restartBroker, restartBroker, revertLoggingLevels, revertSystemProperties, runBare, saveTestConfiguration, saveTestVirtualhosts, sendMessage, sendMessage, sendMessage, setBrokerEnvironment, setBrokerOnlySystemProperty, setConfigurationProperty, setLoggerLevel, setMessageSize, setSystemProperty, setSystemProperty, setTestClientSystemProperty, startBroker, startBroker, stopBroker, stopBroker
 
Methods inherited from class org.apache.qpid.test.utils.QpidTestCase
getTestProfileMessageStoreClassName, run
 
Methods inherited from class junit.framework.TestCase
countTestCases, createResult, getName, run, runTest, setName, toString
 
Methods inherited from class junit.framework.Assert
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, fail, fail, failNotEquals, failNotSame, failSame
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DurableSubscriptionTest

public DurableSubscriptionTest()
Method Detail

setUp

public void setUp()
           throws Exception
Overrides:
setUp in class QpidBrokerTestCase
Throws:
Exception

tearDown

public void tearDown()
              throws Exception
Overrides:
tearDown in class QpidBrokerTestCase
Throws:
Exception

testUnsubscribe

public void testUnsubscribe()
                     throws Exception
Throws:
Exception

testDurabilityNOACK

public void testDurabilityNOACK()
                         throws Exception
Throws:
Exception

testDurabilityAUTOACK

public void testDurabilityAUTOACK()
                           throws Exception
Throws:
Exception

testDurabilityAUTOACKwithRestartIfPersistent

public void testDurabilityAUTOACKwithRestartIfPersistent()
                                                  throws Exception
Throws:
Exception

testDurabilityNOACKSessionPerConnection

public void testDurabilityNOACKSessionPerConnection()
                                             throws Exception
Throws:
Exception

testDurabilityAUTOACKSessionPerConnection

public void testDurabilityAUTOACKSessionPerConnection()
                                               throws Exception
Throws:
Exception

testDurableWithInvalidSelector

public void testDurableWithInvalidSelector()
                                    throws Exception
This tests the fix for QPID-1085 Creates a durable subscriber with an invalid selector, checks that the exception is thrown correctly and that the subscription is not created.

Throws:
Exception

testDurableWithInvalidDestination

public void testDurableWithInvalidDestination()
                                       throws Exception
This tests the fix for QPID-1085 Creates a durable subscriber with an invalid destination, checks that the exception is thrown correctly and that the subscription is not created.

Throws:
Exception

testResubscribeWithChangedSelector

public void testResubscribeWithChangedSelector()
                                        throws Exception
Creates a durable subscription with a selector, then changes that selector on resubscription

QPID-1202, QPID-2418

Throws:
Exception

testDurableSubscribeWithTemporaryTopic

public void testDurableSubscribeWithTemporaryTopic()
                                            throws Exception
Throws:
Exception

testDurSubSameMessageSelector

public void testDurSubSameMessageSelector()
                                   throws Exception
create and register a durable subscriber with a message selector and then close it create a publisher and send 5 right messages and 5 wrong messages create another durable subscriber with the same selector and name check messages are still there

QPID-2418

Throws:
Exception

testResubscribeWithChangedSelectorNoClose

public void testResubscribeWithChangedSelectorNoClose()
                                               throws Exception

QPID-2418

Throws:
Exception

testDurSubAddMessageSelectorNoClose

public void testDurSubAddMessageSelectorNoClose()
                                         throws Exception

QPID-2418

Throws:
Exception

testDurSubNoSelectorResubscribeNoClose

public void testDurSubNoSelectorResubscribeNoClose()
                                            throws Exception

QPID-2418

Throws:
Exception


Licensed to the Apache Software Foundation