Author: angela
Date: Tue Apr 26 13:20:51 2016
New Revision: 1741016
URL: http://svn.apache.org/viewvc?rev=1741016&view=rev
Log:
OAK-4226 : Improve testing of DefaultSyncContext (move special identity classes
to TestIdentityProvider)
Modified:
jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/TestIdentityProvider.java
jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/basic/DefaultSyncContextTest.java
Modified:
jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/TestIdentityProvider.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/TestIdentityProvider.java?rev=1741016&r1=1741015&r2=1741016&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/TestIdentityProvider.java
(original)
+++
jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/TestIdentityProvider.java
Tue Apr 26 13:20:51 2016
@@ -131,19 +131,35 @@ public class TestIdentityProvider implem
return externalGroups.values().iterator();
}
- private static class TestIdentity implements ExternalIdentity {
+ public static class TestIdentity implements ExternalIdentity {
private final String userId;
+ private final String principalName;
private final ExternalIdentityRef id;
private final Set<ExternalIdentityRef> groups = new
HashSet<ExternalIdentityRef>();
private final Map<String, Object> props = new HashMap<String,
Object>();
- private TestIdentity(String userId) {
+ public TestIdentity() {
+ this("externalId", "principalName");
+ }
+
+ public TestIdentity(@Nonnull String userId) {
+ this(userId, userId);
+ }
+
+ public TestIdentity(@Nonnull String userId, @Nonnull String
principalName) {
this.userId = userId;
+ this.principalName = principalName;
id = new ExternalIdentityRef(userId, "test");
}
+ public TestIdentity(@Nonnull ExternalIdentity base) {
+ userId = base.getId();
+ principalName = base.getPrincipalName();
+ id = base.getExternalId();
+ }
+
@Nonnull
@Override
public String getId() {
@@ -153,7 +169,7 @@ public class TestIdentityProvider implem
@Nonnull
@Override
public String getPrincipalName() {
- return userId;
+ return principalName;
}
@Nonnull
@@ -216,4 +232,36 @@ public class TestIdentityProvider implem
return null;
}
}
+
+ public static final class ForeignExternalUser extends
TestIdentityProvider.TestIdentity implements ExternalUser {
+
+ public ForeignExternalUser() {
+ super();
+ }
+
+ @Nonnull
+ @Override
+ public ExternalIdentityRef getExternalId() {
+ return new ExternalIdentityRef(getId(), "AnotherExternalIDP");
+ }
+ }
+
+ public static final class ForeignExternalGroup extends
TestIdentityProvider.TestIdentity implements ExternalGroup {
+
+ public ForeignExternalGroup() {
+ super();
+ }
+
+ @Nonnull
+ @Override
+ public ExternalIdentityRef getExternalId() {
+ return new ExternalIdentityRef(getId(), "AnotherExternalIDP");
+ }
+
+ @Nonnull
+ @Override
+ public Iterable<ExternalIdentityRef> getDeclaredMembers() {
+ return ImmutableList.of();
+ }
+ }
}
\ No newline at end of file
Modified:
jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/basic/DefaultSyncContextTest.java
URL:
http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/basic/DefaultSyncContextTest.java?rev=1741016&r1=1741015&r2=1741016&view=diff
==============================================================================
---
jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/basic/DefaultSyncContextTest.java
(original)
+++
jackrabbit/oak/trunk/oak-auth-external/src/test/java/org/apache/jackrabbit/oak/spi/security/authentication/external/basic/DefaultSyncContextTest.java
Tue Apr 26 13:20:51 2016
@@ -27,7 +27,6 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
-import javax.annotation.CheckForNull;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import javax.jcr.Binary;
@@ -48,7 +47,6 @@ import org.apache.jackrabbit.api.securit
import
org.apache.jackrabbit.oak.spi.security.authentication.external.AbstractExternalAuthTest;
import
org.apache.jackrabbit.oak.spi.security.authentication.external.ExternalGroup;
import
org.apache.jackrabbit.oak.spi.security.authentication.external.ExternalIdentity;
-import
org.apache.jackrabbit.oak.spi.security.authentication.external.ExternalIdentityException;
import
org.apache.jackrabbit.oak.spi.security.authentication.external.ExternalIdentityRef;
import
org.apache.jackrabbit.oak.spi.security.authentication.external.ExternalUser;
import
org.apache.jackrabbit.oak.spi.security.authentication.external.SyncException;
@@ -280,7 +278,7 @@ public class DefaultSyncContextTest exte
@Test(expected = IllegalArgumentException.class)
public void testSyncInvalidExternalIdentity() throws Exception {
- syncCtx.sync(new TestExternalIdentity());
+ syncCtx.sync(new TestIdentityProvider.TestIdentity());
}
@Test
@@ -318,7 +316,7 @@ public class DefaultSyncContextTest exte
@Test
public void testSyncForeignExternalUser() throws Exception {
- ExternalIdentity foreign = new ForeignExternalUser();
+ ExternalIdentity foreign = new
TestIdentityProvider.ForeignExternalUser();
SyncResult res = syncCtx.sync(foreign);
assertNotNull(res);
@@ -340,7 +338,7 @@ public class DefaultSyncContextTest exte
@Test
public void testSyncForeignExternalGroup() throws Exception {
- ExternalIdentity foreign = new ForeignExternalGroup();
+ ExternalIdentity foreign = new
TestIdentityProvider.ForeignExternalGroup();
SyncResult res = syncCtx.sync(foreign);
assertNotNull(res);
@@ -1004,7 +1002,7 @@ public class DefaultSyncContextTest exte
assertEquals(PropertyType.STRING, v.getType());
assertEquals("s", v.getString());
- Object o = new ForeignExternalUser();
+ Object o = new TestIdentityProvider.ForeignExternalUser();
v = syncCtx.createValue(o);
assertNotNull(v);
assertEquals(PropertyType.STRING, v.getType());
@@ -1188,90 +1186,12 @@ public class DefaultSyncContextTest exte
assertFalse(syncCtx.isSameIDP(gr));
}
- /**
- * ExternalIdentity implementation that is neither user nor group.
- */
- private class TestExternalIdentity implements ExternalIdentity {
-
- private final String id;
- private final String principalName;
-
- private TestExternalIdentity() {
- this.id = "externalId";
- this.principalName = "principalName";
- }
-
- private TestExternalIdentity(ExternalIdentity base) {
- this.id = base.getId();
- this.principalName = base.getPrincipalName();
- }
-
- @Nonnull
- @Override
- public ExternalIdentityRef getExternalId() {
- return new ExternalIdentityRef(getId(), idp.getName());
- }
-
- @Nonnull
- @Override
- public String getId() {
- return id;
- }
-
- @Nonnull
- @Override
- public String getPrincipalName() {
- return principalName;
- }
-
- @CheckForNull
- @Override
- public String getIntermediatePath() {
- return null;
- }
-
- @Nonnull
- @Override
- public Iterable<ExternalIdentityRef> getDeclaredGroups() throws
ExternalIdentityException {
- return ImmutableSet.of();
- }
-
- @Nonnull
- @Override
- public Map<String, ?> getProperties() {
- return ImmutableMap.of();
- }
- }
-
- private final class ForeignExternalUser extends TestExternalIdentity
implements ExternalUser {
-
- @Nonnull
- @Override
- public ExternalIdentityRef getExternalId() {
- return new ExternalIdentityRef(getId(), "AnotherExternalIDP");
- }
- }
-
- private final class ForeignExternalGroup extends TestExternalIdentity
implements ExternalGroup {
-
- @Nonnull
- @Override
- public ExternalIdentityRef getExternalId() {
- return new ExternalIdentityRef(getId(), "AnotherExternalIDP");
- }
-
- @Nonnull
- @Override
- public Iterable<ExternalIdentityRef> getDeclaredMembers() {
- return ImmutableList.of();
- }
- }
-
- private final class ExternalUserWithDeclaredGroup extends
TestExternalIdentity implements ExternalUser {
+ private final class ExternalUserWithDeclaredGroup extends
TestIdentityProvider.TestIdentity implements ExternalUser {
private final ExternalIdentityRef declaredGroupRef;
private ExternalUserWithDeclaredGroup(@Nonnull ExternalIdentityRef
declaredGroupRef) {
+ super("externalId");
this.declaredGroupRef = declaredGroupRef;
}
@@ -1287,7 +1207,7 @@ public class DefaultSyncContextTest exte
}
}
- private final class ExternalUserFromGroup extends TestExternalIdentity
implements ExternalUser {
+ private final class ExternalUserFromGroup extends
TestIdentityProvider.TestIdentity implements ExternalUser {
private ExternalUserFromGroup(@Nonnull ExternalIdentity base) {
super(base);