You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by an...@apache.org on 2019/11/01 15:33:07 UTC

svn commit: r1869264 - in /jackrabbit/oak/trunk: oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/ oak-au...

Author: angela
Date: Fri Nov  1 15:33:07 2019
New Revision: 1869264

URL: http://svn.apache.org/viewvc?rev=1869264&view=rev
Log:
OAK-8725 : Improve tests for oak-external-auth (wip)

Added:
    jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginAutoMembershipTest.java
      - copied, changed from r1869263, jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleAutoMembershipTest.java
    jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginDynamicMembershipTest.java
      - copied, changed from r1869263, jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleDynamicMembershipTest.java
    jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginTest.java
      - copied, changed from r1869263, jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleTest.java
    jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/PreAuthDefaultExternalLoginTest.java
      - copied, changed from r1869263, jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/PreAuthDefaultExternalLoginModuleTest.java
Removed:
    jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleAutoMembershipTest.java
    jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleDynamicMembershipTest.java
    jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleTest.java
    jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/PreAuthDefaultExternalLoginModuleTest.java
Modified:
    jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/AbstractExternalAuthTest.java
    jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/CustomCredentialsSupportTest.java
    jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/PrincipalResolutionTest.java
    jackrabbit/oak/trunk/oak-auth-ldap/src/test/java/org/apache/jackrabbit/oak/security/authentication/ldap/LdapLoginTestBase.java

Modified: jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/AbstractExternalAuthTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/AbstractExternalAuthTest.java?rev=1869264&r1=1869263&r2=1869264&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/AbstractExternalAuthTest.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/AbstractExternalAuthTest.java Fri Nov  1 15:33:07 2019
@@ -124,25 +124,23 @@ public abstract class AbstractExternalAu
         throw e;
     }
 
+    @NotNull
     private static Iterator<String> getAllAuthorizableIds(@NotNull UserManager userManager) throws Exception {
         Iterator<Authorizable> iter = userManager.findAuthorizables("jcr:primaryType", null);
-        return Iterators.filter(Iterators.transform(iter, new Function<Authorizable, String>() {
-            @Nullable
-            @Override
-            public String apply(Authorizable input) {
-                try {
-                    if (input != null) {
-                        return input.getID();
-                    }
-                } catch (RepositoryException e) {
-                    // failed to retrieve ID
+        return Iterators.filter(Iterators.transform(iter, input -> {
+            try {
+                if (input != null) {
+                    return input.getID();
                 }
-                return null;
+            } catch (RepositoryException e) {
+                // failed to retrieve ID
             }
+            return null;
         }), Predicates.notNull());
     }
 
     @Override
+    @NotNull
     protected SecurityProvider getSecurityProvider() {
         if (securityProvider == null) {
             securityProvider = TestSecurityProvider.newTestSecurityProvider(getSecurityConfigParameters(), externalPrincipalConfiguration);
@@ -153,6 +151,7 @@ public abstract class AbstractExternalAu
         return securityProvider;
     }
 
+    @NotNull
     protected ExternalIdentityProvider createIDP() {
         return new TestIdentityProvider();
     }
@@ -165,6 +164,7 @@ public abstract class AbstractExternalAu
         ((TestIdentityProvider) idp).addUser(new TestIdentityProvider.TestUser(id, idp.getName()));
     }
 
+    @NotNull
     protected DefaultSyncConfig createSyncConfig() {
         DefaultSyncConfig syncConfig = new DefaultSyncConfig();
         Map<String, String> mapping = new HashMap<>();
@@ -178,6 +178,7 @@ public abstract class AbstractExternalAu
         return syncConfig;
     }
 
+    @NotNull
     protected Root getSystemRoot() throws Exception {
         if (systemRoot == null) {
             systemSession = Subject.doAs(SystemSubject.INSTANCE, new PrivilegedExceptionAction<ContentSession>() {

Copied: jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginAutoMembershipTest.java (from r1869263, jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleAutoMembershipTest.java)
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginAutoMembershipTest.java?p2=jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginAutoMembershipTest.java&p1=jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleAutoMembershipTest.java&r1=1869263&r2=1869264&rev=1869264&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleAutoMembershipTest.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginAutoMembershipTest.java Fri Nov  1 15:33:07 2019
@@ -53,7 +53,7 @@ import static org.junit.Assert.assertNot
 import static org.junit.Assert.assertSame;
 import static org.junit.Assert.assertTrue;
 
-public class ExternalLoginModuleAutoMembershipTest extends ExternalLoginTestBase {
+public class ExternalLoginAutoMembershipTest extends ExternalLoginTestBase {
 
     private static final String NON_EXISTING_NAME = "nonExisting";
 
@@ -111,6 +111,7 @@ public class ExternalLoginModuleAutoMemb
 
     @Override
     public void after() throws Exception {
+        options.clear();
         try {
             syncConfig.user().setAutoMembership().setExpirationTime(0);
 
@@ -154,10 +155,7 @@ public class ExternalLoginModuleAutoMemb
 
     @Test
     public void testLoginSyncAutoMembershipSetup1() throws Exception {
-        ContentSession cs = null;
-        try {
-            cs = login(new SimpleCredentials(USER_ID, new char[0]));
-
+        try (ContentSession cs = login(new SimpleCredentials(USER_ID, new char[0]))){
             // the login must set the existing auto-membership principals to the subject
             Set<Principal> principals = cs.getAuthInfo().getPrincipals();
             assertTrue(principals.contains(setup1.gr.getPrincipal()));
@@ -176,11 +174,6 @@ public class ExternalLoginModuleAutoMemb
 
             assertFalse(gr.isDeclaredMember(user));
             assertFalse(gr.isMember(user));
-        } finally {
-            options.clear();
-            if (cs != null) {
-                cs.close();
-            }
         }
     }
 
@@ -188,10 +181,7 @@ public class ExternalLoginModuleAutoMemb
     public void testLoginAfterSyncSetup1() throws Exception {
         setup1.sync(USER_ID, false);
 
-        ContentSession cs = null;
-        try {
-            cs = login(new SimpleCredentials(USER_ID, new char[0]));
-
+        try (ContentSession cs = login(new SimpleCredentials(USER_ID, new char[0]))) {
             // the login must set the configured + existing auto-membership principals
             // to the subject; non-existing auto-membership entries must be ignored.
             Set<Principal> principals = cs.getAuthInfo().getPrincipals();
@@ -211,11 +201,6 @@ public class ExternalLoginModuleAutoMemb
 
             assertFalse(gr.isDeclaredMember(user));
             assertFalse(gr.isMember(user));
-        } finally {
-            options.clear();
-            if (cs != null) {
-                cs.close();
-            }
         }
     }
 
@@ -223,9 +208,7 @@ public class ExternalLoginModuleAutoMemb
     public void testLoginAfterSyncSetup2() throws Exception {
         setup2.sync(USER_ID, false);
 
-        ContentSession cs = null;
-        try {
-            cs = login(new SimpleCredentials(USER_ID, new char[0]));
+        try (ContentSession cs = login(new SimpleCredentials(USER_ID, new char[0]))) {
 
             // the login must set the existing auto-membership principals to the subject
             Set<Principal> principals = cs.getAuthInfo().getPrincipals();
@@ -245,11 +228,6 @@ public class ExternalLoginModuleAutoMemb
 
             assertFalse(gr.isDeclaredMember(user));
             assertFalse(gr.isMember(user));
-        } finally {
-            options.clear();
-            if (cs != null) {
-                cs.close();
-            }
         }
     }
 
@@ -257,9 +235,7 @@ public class ExternalLoginModuleAutoMemb
     public void testLoginAfterSyncSetup3() throws Exception {
         setup3.sync(USER_ID, false);
 
-        ContentSession cs = null;
-        try {
-            cs = login(new SimpleCredentials(USER_ID, new char[0]));
+        try (ContentSession cs = login(new SimpleCredentials(USER_ID, new char[0]))) {
 
             // the login must set the existing auto-membership principals to the subject
             Set<Principal> principals = cs.getAuthInfo().getPrincipals();
@@ -279,11 +255,6 @@ public class ExternalLoginModuleAutoMemb
 
             assertTrue(gr.isDeclaredMember(user));
             assertTrue(gr.isMember(user));
-        } finally {
-            options.clear();
-            if (cs != null) {
-                cs.close();
-            }
         }
     }
 
@@ -291,9 +262,7 @@ public class ExternalLoginModuleAutoMemb
     public void testLoginAfterSyncSetup4() throws Exception {
         setup4.sync(USER_ID, false);
 
-        ContentSession cs = null;
-        try {
-            cs = login(new SimpleCredentials(USER_ID, new char[0]));
+        try (ContentSession cs = login(new SimpleCredentials(USER_ID, new char[0]))) {
 
             // the login must set the existing auto-membership principals to the subject
             Set<Principal> principals = cs.getAuthInfo().getPrincipals();
@@ -314,11 +283,6 @@ public class ExternalLoginModuleAutoMemb
 
             assertFalse(gr.isDeclaredMember(user));
             assertFalse(gr.isMember(user));
-        } finally {
-            options.clear();
-            if (cs != null) {
-                cs.close();
-            }
         }
     }
 
@@ -326,10 +290,7 @@ public class ExternalLoginModuleAutoMemb
     public void testLoginAfterSyncSetup5() throws Exception {
         setup5.sync(USER_ID, false);
 
-        ContentSession cs = null;
-        try {
-            cs = login(new SimpleCredentials(USER_ID, new char[0]));
-
+        try (ContentSession cs = login(new SimpleCredentials(USER_ID, new char[0]))) {
             // the login must not set any auto-membership principals to the subject
             // as auto-membership is not configured on this setup.
             Set<Principal> principals = cs.getAuthInfo().getPrincipals();
@@ -342,11 +303,6 @@ public class ExternalLoginModuleAutoMemb
             assertFalse(principals.contains(setup2.gr.getPrincipal()));
             assertFalse(principals.contains(setup3.gr.getPrincipal()));
             assertFalse(principals.contains(setup4.gr.getPrincipal()));
-        } finally {
-            options.clear();
-            if (cs != null) {
-                cs.close();
-            }
         }
     }
 

Copied: jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginDynamicMembershipTest.java (from r1869263, jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleDynamicMembershipTest.java)
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginDynamicMembershipTest.java?p2=jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginDynamicMembershipTest.java&p1=jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleDynamicMembershipTest.java&r1=1869263&r2=1869264&rev=1869264&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleDynamicMembershipTest.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginDynamicMembershipTest.java Fri Nov  1 15:33:07 2019
@@ -45,7 +45,7 @@ import static org.junit.Assert.assertNot
 import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 
-public class ExternalLoginModuleDynamicMembershipTest extends ExternalLoginModuleTest {
+public class ExternalLoginDynamicMembershipTest extends ExternalLoginTest {
 
     @Override
     public void before() throws Exception {

Copied: jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginTest.java (from r1869263, jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleTest.java)
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginTest.java?p2=jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginTest.java&p1=jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleTest.java&r1=1869263&r2=1869264&rev=1869264&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginModuleTest.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/ExternalLoginTest.java Fri Nov  1 15:33:07 2019
@@ -36,9 +36,9 @@ import static org.junit.Assert.assertTru
 import static org.junit.Assert.fail;
 
 /**
- * ExternalLoginModuleTest...
+ * ExternalLoginTest...
  */
-public class ExternalLoginModuleTest extends ExternalLoginTestBase {
+public class ExternalLoginTest extends ExternalLoginTestBase {
 
     @Before
     public void before() throws Exception {

Copied: jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/PreAuthDefaultExternalLoginTest.java (from r1869263, jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/PreAuthDefaultExternalLoginModuleTest.java)
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/PreAuthDefaultExternalLoginTest.java?p2=jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/PreAuthDefaultExternalLoginTest.java&p1=jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/PreAuthDefaultExternalLoginModuleTest.java&r1=1869263&r2=1869264&rev=1869264&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/PreAuthDefaultExternalLoginModuleTest.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/PreAuthDefaultExternalLoginTest.java Fri Nov  1 15:33:07 2019
@@ -44,7 +44,7 @@ import static org.junit.Assert.assertNul
 /**
  * Testing improvements made for <a href="https://issues.apache.org/jira/browse/OAK-3508">OAK-3508</a>
  */
-public class PreAuthDefaultExternalLoginModuleTest extends ExternalLoginTestBase {
+public class PreAuthDefaultExternalLoginTest extends ExternalLoginTestBase {
 
     private Map<String, Object> preAuthOptions = new HashMap<>();
 

Modified: jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/CustomCredentialsSupportTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/CustomCredentialsSupportTest.java?rev=1869264&r1=1869263&r2=1869264&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/CustomCredentialsSupportTest.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/CustomCredentialsSupportTest.java Fri Nov  1 15:33:07 2019
@@ -91,6 +91,7 @@ public class CustomCredentialsSupportTes
     }
 
     @Override
+    @NotNull
     protected ExternalIdentityProvider createIDP() {
         return new IDP();
     }

Modified: jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/PrincipalResolutionTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/PrincipalResolutionTest.java?rev=1869264&r1=1869263&r2=1869264&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/PrincipalResolutionTest.java (original)
+++ jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/impl/PrincipalResolutionTest.java Fri Nov  1 15:33:07 2019
@@ -38,6 +38,7 @@ import static org.junit.Assert.assertFal
 public class PrincipalResolutionTest extends DynamicSyncContextTest {
 
     @Override
+    @NotNull
     protected ExternalIdentityProvider createIDP() {
         return new PrincipalResolvingIDP();
     }

Modified: jackrabbit/oak/trunk/oak-auth-ldap/src/test/java/org/apache/jackrabbit/oak/security/authentication/ldap/LdapLoginTestBase.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-ldap/src/test/java/org/apache/jackrabbit/oak/security/authentication/ldap/LdapLoginTestBase.java?rev=1869264&r1=1869263&r2=1869264&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-auth-ldap/src/test/java/org/apache/jackrabbit/oak/security/authentication/ldap/LdapLoginTestBase.java (original)
+++ jackrabbit/oak/trunk/oak-auth-ldap/src/test/java/org/apache/jackrabbit/oak/security/authentication/ldap/LdapLoginTestBase.java Fri Nov  1 15:33:07 2019
@@ -42,6 +42,7 @@ import org.apache.jackrabbit.oak.spi.sec
 import org.apache.jackrabbit.oak.spi.security.principal.PrincipalProvider;
 import org.apache.jackrabbit.oak.spi.security.user.UserConfiguration;
 import org.apache.jackrabbit.oak.spi.security.user.UserConstants;
+import org.jetbrains.annotations.NotNull;
 import org.junit.After;
 import org.junit.AfterClass;
 import org.junit.Before;
@@ -140,6 +141,7 @@ public abstract class LdapLoginTestBase
     }
 
     @Override
+    @NotNull
     protected ExternalIdentityProvider createIDP() {
         LdapProviderConfig cfg = new LdapProviderConfig()
                 .setName("ldap")