Author: angela
Date: Tue Nov 24 15:27:28 2020
New Revision: 1883789
URL: http://svn.apache.org/viewvc?rev=1883789&view=rev
Log:
OAK-9282 : SecurityProviderRegistration: missing test for concurrent activation
Modified:
jackrabbit/oak/trunk/oak-core/pom.xml
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/internal/SecurityProviderRegistrationTest.java
Modified: jackrabbit/oak/trunk/oak-core/pom.xml
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/pom.xml?rev=1883789&r1=1883788&r2=1883789&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/pom.xml (original)
+++ jackrabbit/oak/trunk/oak-core/pom.xml Tue Nov 24 15:27:28 2020
@@ -158,6 +158,7 @@
<include>org.apache.jackrabbit.oak.security.authentication</include>
<include>org.apache.jackrabbit.oak.security.authentication.user</include>
<include>org.apache.jackrabbit.oak.security.authorization</include>
+
<include>org.apache.jackrabbit.oak.security.internal</include>
<include>org.apache.jackrabbit.oak.security.principal</include>
<include>org.apache.jackrabbit.oak.security.privilege</include>
<include>org.apache.jackrabbit.oak.security.user.autosave</include>
@@ -182,7 +183,6 @@
<include>org.apache.jackrabbit.oak.security.authorization.composite</include>
<include>org.apache.jackrabbit.oak.security.authorization.permission</include>
<include>org.apache.jackrabbit.oak.security.authorization.restriction</include>
-
<include>org.apache.jackrabbit.oak.security.internal</include>
<include>org.apache.jackrabbit.oak.security.user</include>
</includes>
<excludes>
Modified:
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/internal/SecurityProviderRegistrationTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/internal/SecurityProviderRegistrationTest.java?rev=1883789&r1=1883788&r2=1883789&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/internal/SecurityProviderRegistrationTest.java
(original)
+++
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/security/internal/SecurityProviderRegistrationTest.java
Tue Nov 24 15:27:28 2020
@@ -115,7 +115,7 @@ public class SecurityProviderRegistratio
@Rule
public final OsgiContext context = new OsgiContext();
- private SecurityProviderRegistration registration = new
SecurityProviderRegistration();
+ private final SecurityProviderRegistration registration = new
SecurityProviderRegistration();
private static void assertContext(@NotNull Context context, int
expectedSize, @NotNull Tree tree, boolean isDefined) throws Exception {
Class<?> c = context.getClass();
@@ -212,6 +212,17 @@ public class SecurityProviderRegistratio
assertEquals(6,
Iterables.size(Iterables.filter(service.getConfigurations(),
Predicates.notNull())));
}
+
+ @Test
+ public void testActivateWhileRegistering() throws Exception {
+ Field f = registration.getClass().getDeclaredField("registering");
+ f.setAccessible(true);
+ f.set(registration, true);
+
+ registration.activate(context.bundleContext(),
configWithRequiredServiceIds());
+ assertNull(context.getService(SecurityProvider.class));
+ }
+
@Test
public void testModified() {
registration.activate(context.bundleContext(),
configWithRequiredServiceIds("rpId", "authorizationId"));
@@ -1081,6 +1092,5 @@ public class SecurityProviderRegistratio
assertEquals(1,
am.getEffectivePolicies(ImmutableSet.of(EveryonePrincipal.getInstance())).length);
verify(filter1, never()).stop(acMgr,
ImmutableSet.of(EveryonePrincipal.getInstance()));
verify(filter2, times(1)).stop(acMgr,
ImmutableSet.of(EveryonePrincipal.getInstance()));
-
}
}