summaryrefslogtreecommitdiff
path: root/qpid/java/broker/src/test
diff options
context:
space:
mode:
authorAidan Skinner <aidan@apache.org>2009-02-04 15:33:26 +0000
committerAidan Skinner <aidan@apache.org>2009-02-04 15:33:26 +0000
commitf635dc00fe03b7930154cc8e8a06dc0aa17039ab (patch)
treebe2dc044c20b33875aebf1002a9130244192036a /qpid/java/broker/src/test
parent366aa9340712308b6ead089f1d9cd82b2bf30b1c (diff)
downloadqpid-python-f635dc00fe03b7930154cc8e8a06dc0aa17039ab.tar.gz
QPID-1626: Make ACLPlugin a more sensible interface, get rid of the giant switch in SimpleXML. Handlers shouldn't rely on the plugin throwing an exception for flow control, they now check the return value and do the right thing themselves.
AllowAll, DenyAll now extend BasicACLPlugin. PrinciplePermissions(Test): futz with the interface a little so that it's easier to call from an ACLPlugin implementation. Leave the giant switch alone as it's quite fragile, and throws rocks at cats. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@740769 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/security/access/PrincipalPermissionsTest.java24
1 files changed, 11 insertions, 13 deletions
diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/security/access/PrincipalPermissionsTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/security/access/PrincipalPermissionsTest.java
index 7927339491..df41ac9dc2 100644
--- a/qpid/java/broker/src/test/java/org/apache/qpid/server/security/access/PrincipalPermissionsTest.java
+++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/security/access/PrincipalPermissionsTest.java
@@ -54,7 +54,7 @@ public class PrincipalPermissionsTest extends TestCase
private AMQShortString _exchangeType = new AMQShortString("direct");
private boolean _internal = false;
- private DirectExchange _exchange = new DirectExchange();
+ private DirectExchange _exchange;
private VirtualHost _virtualHost;
private AMQShortString _owner = new AMQShortString(this.getClass().getName()+"owner");
private AMQQueue _queue;
@@ -67,6 +67,7 @@ public class PrincipalPermissionsTest extends TestCase
try
{
_virtualHost = new VirtualHost("localhost", new SkeletonMessageStore());
+ _exchange = DirectExchange.TYPE.newInstance(_virtualHost, _exchangeName, _durable, _ticket, _autoDelete);
_queue = AMQQueueFactory.createAMQQueueImpl(_queueName, false, _owner , false, _virtualHost, _arguments);
}
catch (Exception e)
@@ -96,15 +97,11 @@ public class PrincipalPermissionsTest extends TestCase
public void testQueueCreate()
{
Object[] grantArgs = new Object[]{_temporary , _queueName, _exchangeName, _routingKey};
+ Object[] authArgs = new Object[]{_autoDelete, _queueName};
-
- QueueDeclareBodyImpl queueDeclare = new QueueDeclareBodyImpl(
- _ticket, _queueName, _passive, _durable, _exclusive, _autoDelete, _nowait, _arguments);
- Object[] authArgs = new Object[]{queueDeclare};
-
- assertFalse(_perms.authorise(Permission.CREATE, authArgs));
- _perms.grant(Permission.CREATE, grantArgs);
- assertTrue(_perms.authorise(Permission.CREATE, authArgs));
+ assertFalse(_perms.authorise(Permission.CREATEQUEUE, authArgs));
+ _perms.grant(Permission.CREATEQUEUE, grantArgs);
+ assertTrue(_perms.authorise(Permission.CREATEQUEUE, authArgs));
}
@@ -117,9 +114,9 @@ public class PrincipalPermissionsTest extends TestCase
Object[] authArgs = new Object[]{exchangeDeclare};
Object[] grantArgs = new Object[]{_exchangeName, _exchangeType};
- assertFalse(_perms.authorise(Permission.CREATE, authArgs));
- _perms.grant(Permission.CREATE, grantArgs);
- assertTrue(_perms.authorise(Permission.CREATE, authArgs));
+ assertFalse(_perms.authorise(Permission.CREATEEXCHANGE, authArgs));
+ _perms.grant(Permission.CREATEEXCHANGE, grantArgs);
+ assertTrue(_perms.authorise(Permission.CREATEEXCHANGE, authArgs));
}
public void testConsume()
@@ -137,9 +134,10 @@ public class PrincipalPermissionsTest extends TestCase
public void testPublish()
{
Object[] authArgs = new Object[]{_exchange, _routingKey};
+ Object[] grantArgs = new Object[]{_exchange.getName(), _routingKey};
assertFalse(_perms.authorise(Permission.PUBLISH, authArgs));
- _perms.grant(Permission.PUBLISH, authArgs);
+ _perms.grant(Permission.PUBLISH, grantArgs);
assertTrue(_perms.authorise(Permission.PUBLISH, authArgs));
}