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()));
-
     }
 }


Reply via email to