org.apache.qpid.server.security.acl
Class ExhaustiveACLTest

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.server.security.acl.AbstractACLTestCase
                      extended by org.apache.qpid.server.security.acl.ExhaustiveACLTest
All Implemented Interfaces:
junit.framework.Test, org.apache.qpid.jms.ConnectionListener

public class ExhaustiveACLTest
extends AbstractACLTestCase

ACL version 2/3 file testing to verify that ACL entries control queue creation with specific properties. Tests have their own ACL files that setup specific permissions, and then try to create queues with every possible combination of properties to show that rule matching works correctly. For example, a rule that specified autodelete="true" for queues with name="temp.true.*" as well should not affect queues that have names that do not match, or queues that are not autodelete, or both. Also checks that ACL entries only affect the specified users and virtual hosts.


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.server.security.acl.AbstractACLTestCase
_exceptionReceived
 
Fields inherited from class org.apache.qpid.test.utils.QpidBrokerTestCase
_broker, _brokerLanguage, _brokerLogPrefix, _brokerOutputStream, _brokerPersistent, _brokers, _configFile, _connectionFactory, _connections, _initialContext, _interleaveBrokerLog, _logger, _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
ExhaustiveACLTest()
           
 
Method Summary
 String getConfig()
          Override this to return the name of the configuration XML file.
 List<String> getHostList()
          Override this to setup external ACL files for virtual hosts.
 void setUpAuthoriseCreateQueue()
           
 void setUpAuthoriseCreateQueueAutodelete()
           
 void setUpAuthoriseCreateQueueBoth()
           
 void testAuthoriseCreateQueue()
          Tests creation of named queues.
 void testAuthoriseCreateQueueAutodelete()
          Test creation of temporary queues, with the autodelete property set to true.
 void testAuthoriseCreateQueueBoth()
          Tests creation of named queues.
 
Methods inherited from class org.apache.qpid.server.security.acl.AbstractACLTestCase
bytesReceived, bytesSent, check403Exception, createConnectionURL, failoverComplete, getConnection, preFailover, preResubscribe, setUp, setUpACLFile, tearDown, writeACLFile
 
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

ExhaustiveACLTest

public ExhaustiveACLTest()
Method Detail

getConfig

public String getConfig()
Description copied from class: AbstractACLTestCase
Override this to return the name of the configuration XML file.

Overrides:
getConfig in class AbstractACLTestCase

getHostList

public List<String> getHostList()
Description copied from class: AbstractACLTestCase
Override this to setup external ACL files for virtual hosts.

Overrides:
getHostList in class AbstractACLTestCase

setUpAuthoriseCreateQueueAutodelete

public void setUpAuthoriseCreateQueueAutodelete()
                                         throws Exception
Throws:
Exception

testAuthoriseCreateQueueAutodelete

public void testAuthoriseCreateQueueAutodelete()
                                        throws Exception
Test creation of temporary queues, with the autodelete property set to true.

Throws:
Exception

setUpAuthoriseCreateQueue

public void setUpAuthoriseCreateQueue()
                               throws Exception
Throws:
Exception

testAuthoriseCreateQueue

public void testAuthoriseCreateQueue()
                              throws Exception
Tests creation of named queues. If a named queue is specified

Throws:
Exception

setUpAuthoriseCreateQueueBoth

public void setUpAuthoriseCreateQueueBoth()
                                   throws Exception
Throws:
Exception

testAuthoriseCreateQueueBoth

public void testAuthoriseCreateQueueBoth()
                                  throws Exception
Tests creation of named queues. If a named queue is specified

Throws:
Exception


Licensed to the Apache Software Foundation