Repository: qpid-broker-j Updated Branches: refs/heads/master b52830d5a -> 461f842a6
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/461f842a/systests/src/test/java/org/apache/qpid/systest/rest/acl/VirtualHostACLTest.java ---------------------------------------------------------------------- diff --git a/systests/src/test/java/org/apache/qpid/systest/rest/acl/VirtualHostACLTest.java b/systests/src/test/java/org/apache/qpid/systest/rest/acl/VirtualHostACLTest.java index cd4636b..e117cc3 100644 --- a/systests/src/test/java/org/apache/qpid/systest/rest/acl/VirtualHostACLTest.java +++ b/systests/src/test/java/org/apache/qpid/systest/rest/acl/VirtualHostACLTest.java @@ -31,11 +31,11 @@ import org.apache.qpid.server.model.ConfiguredObject; import org.apache.qpid.server.model.VirtualHost; import org.apache.qpid.server.model.VirtualHostLogger; import org.apache.qpid.server.model.VirtualHostNode; -import org.apache.qpid.server.security.acl.AbstractACLTestCase; import org.apache.qpid.server.virtualhost.ProvidedStoreVirtualHostImpl; import org.apache.qpid.server.virtualhostnode.JsonVirtualHostNode; import org.apache.qpid.systest.rest.QpidRestTestCase; import org.apache.qpid.test.utils.TestBrokerConfiguration; +import org.apache.qpid.test.utils.TestUtils; public class VirtualHostACLTest extends QpidRestTestCase { @@ -52,7 +52,7 @@ public class VirtualHostACLTest extends QpidRestTestCase final TestBrokerConfiguration defaultBrokerConfiguration = getDefaultBrokerConfiguration(); defaultBrokerConfiguration.configureTemporaryPasswordFile(ALLOWED_USER, DENIED_USER, RESTRICTED_USER); - AbstractACLTestCase.writeACLFileUtil(this, "ACL ALLOW-LOG ALL ACCESS MANAGEMENT", + TestUtils.writeACLFileUtil(this, "ACL ALLOW-LOG ALL ACCESS MANAGEMENT", "ACL ALLOW-LOG " + ALLOWED_USER + " ALL VIRTUALHOST", "ACL ALLOW-LOG " + RESTRICTED_USER + " ALL VIRTUALHOST attributes=\"description\"", "ACL DENY-LOG " + DENIED_USER + " ALL VIRTUALHOST", http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/461f842a/systests/src/test/java/org/apache/qpid/systest/rest/acl/VirtualHostNodeACLTest.java ---------------------------------------------------------------------- diff --git a/systests/src/test/java/org/apache/qpid/systest/rest/acl/VirtualHostNodeACLTest.java b/systests/src/test/java/org/apache/qpid/systest/rest/acl/VirtualHostNodeACLTest.java index 5ad4548..859c263 100644 --- a/systests/src/test/java/org/apache/qpid/systest/rest/acl/VirtualHostNodeACLTest.java +++ b/systests/src/test/java/org/apache/qpid/systest/rest/acl/VirtualHostNodeACLTest.java @@ -25,10 +25,10 @@ import java.util.Map; import javax.servlet.http.HttpServletResponse; import org.apache.qpid.server.model.VirtualHostNode; -import org.apache.qpid.server.security.acl.AbstractACLTestCase; import org.apache.qpid.server.virtualhostnode.JsonVirtualHostNode; import org.apache.qpid.systest.rest.QpidRestTestCase; import org.apache.qpid.test.utils.TestBrokerConfiguration; +import org.apache.qpid.test.utils.TestUtils; public class VirtualHostNodeACLTest extends QpidRestTestCase { @@ -43,7 +43,7 @@ public class VirtualHostNodeACLTest extends QpidRestTestCase final TestBrokerConfiguration defaultBrokerConfiguration = getDefaultBrokerConfiguration(); defaultBrokerConfiguration.configureTemporaryPasswordFile(ALLOWED_USER, DENIED_USER); - AbstractACLTestCase.writeACLFileUtil(this, "ACL ALLOW-LOG ALL ACCESS MANAGEMENT", + TestUtils.writeACLFileUtil(this, "ACL ALLOW-LOG ALL ACCESS MANAGEMENT", "ACL ALLOW-LOG " + ALLOWED_USER + " ALL VIRTUALHOSTNODE", "ACL DENY-LOG " + DENIED_USER + " ALL VIRTUALHOSTNODE", "ACL DENY-LOG ALL ALL"); http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/461f842a/systests/systests-utils/src/main/java/org/apache/qpid/tests/utils/EmbeddedBrokerPerClassAdminImpl.java ---------------------------------------------------------------------- diff --git a/systests/systests-utils/src/main/java/org/apache/qpid/tests/utils/EmbeddedBrokerPerClassAdminImpl.java b/systests/systests-utils/src/main/java/org/apache/qpid/tests/utils/EmbeddedBrokerPerClassAdminImpl.java index 0bb57ce..6016f56 100644 --- a/systests/systests-utils/src/main/java/org/apache/qpid/tests/utils/EmbeddedBrokerPerClassAdminImpl.java +++ b/systests/systests-utils/src/main/java/org/apache/qpid/tests/utils/EmbeddedBrokerPerClassAdminImpl.java @@ -24,16 +24,22 @@ import java.io.File; import java.lang.reflect.Method; import java.net.InetSocketAddress; import java.nio.file.Files; +import java.security.Principal; +import java.security.PrivilegedAction; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.Date; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.concurrent.atomic.AtomicInteger; +import javax.security.auth.Subject; + import ch.qos.logback.classic.LoggerContext; import com.google.common.util.concurrent.Futures; import com.google.common.util.concurrent.ListenableFuture; @@ -54,6 +60,7 @@ import org.apache.qpid.server.model.Queue; import org.apache.qpid.server.model.SystemConfig; import org.apache.qpid.server.model.VirtualHostNode; import org.apache.qpid.server.plugin.PluggableService; +import org.apache.qpid.server.security.auth.TaskPrincipal; import org.apache.qpid.server.store.MemoryConfigurationStore; import org.apache.qpid.server.util.FileUtils; import org.apache.qpid.server.virtualhost.QueueManagingVirtualHost; @@ -158,15 +165,25 @@ public class EmbeddedBrokerPerClassAdminImpl implements BrokerAdmin LOGGER.info("========================= stop executing test : " + testClass.getSimpleName() + "#" + method.getName()); setClassQualifiedTestName(testClass.getName()); LOGGER.info("========================= cleaning up test environment for test : " + testClass.getSimpleName() + "#" + method.getName()); - if (Boolean.getBoolean("broker.clean.between.tests")) - { - _currentVirtualHostNode.delete(); - } - else - { - _currentVirtualHostNode.setAttributes(Collections.singletonMap(VirtualHostNode.DEFAULT_VIRTUAL_HOST_NODE, - false)); - } + + Subject deleteSubject = new Subject(true, + new HashSet<>(Arrays.asList(_systemLauncher.getSystemPrincipal(), + new TaskPrincipal("afterTestMethod"))), + Collections.emptySet(), + Collections.emptySet()); + Subject.doAs(deleteSubject, (PrivilegedAction<Object>) () -> { + if (Boolean.getBoolean("broker.clean.between.tests")) + { + _currentVirtualHostNode.delete(); + } + else + { + _currentVirtualHostNode.setAttributes(Collections.singletonMap(VirtualHostNode.DEFAULT_VIRTUAL_HOST_NODE, + false)); + } + return null; + }); + setClassQualifiedTestName(testClass.getName()); LOGGER.info("========================= cleaning done for test : " + testClass.getSimpleName() + "#" + method.getName()); } http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/461f842a/test-profiles/Java10Excludes ---------------------------------------------------------------------- diff --git a/test-profiles/Java10Excludes b/test-profiles/Java10Excludes index 7e62311..fc83332 100644 --- a/test-profiles/Java10Excludes +++ b/test-profiles/Java10Excludes @@ -128,12 +128,3 @@ org.apache.qpid.test.unit.client.MaxDeliveryCountTest#testAsynchronousClientAckS org.apache.qpid.test.unit.client.MaxDeliveryCountTest#testAsynchronousDupsOkSession org.apache.qpid.test.unit.client.MaxDeliveryCountTest#testAsynchronousAutoAckSession -//ACL tests not applicable for AMQP 1.0 -org.apache.qpid.server.security.acl.MessagingACLTest#testPublishToDefaultExchangeSuccess -org.apache.qpid.server.security.acl.MessagingACLTest#testPublishToDefaultExchangeFailure -org.apache.qpid.server.security.acl.Amqp0xMessagingACLTest#* - -// QPID-7919 : We can't currently ACL the ability to create temporary queues (or exchanges) as these need to -// run as system as so avoid the ACL check. -org.apache.qpid.server.security.acl.MessagingACLTest#testCreateTemporaryQueueFailed - http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/461f842a/test-profiles/JavaPre010Excludes ---------------------------------------------------------------------- diff --git a/test-profiles/JavaPre010Excludes b/test-profiles/JavaPre010Excludes index f27acda..1b423a4 100644 --- a/test-profiles/JavaPre010Excludes +++ b/test-profiles/JavaPre010Excludes @@ -60,9 +60,6 @@ org.apache.qpid.systests.jms_2_0.* // Exclude 1.0 protocol tests org.apache.qpid.tests.protocol.v1_0.* -// QPID-7948: A publish confirms defect prevents this test passing. -org.apache.qpid.server.security.acl.MessagingACLTest#testPublishToTempTopicSuccess - // Test requires ability to address the $management node. Fails for 0-9 only as client erroneously tries to declare an exchange // Already fixed for next Qpid Client AMQP 0-x release (6.3.x) org.apache.qpid.server.stats.StatisticsReportingTest#testBrokerStatistics --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
