You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by cs...@apache.org on 2017/08/16 11:41:26 UTC
[1/5] karaf git commit: Use matcher in tests
Repository: karaf
Updated Branches:
refs/heads/master 01d0aae9b -> 0853a353a
Use matcher in tests
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/6aa806d2
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/6aa806d2
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/6aa806d2
Branch: refs/heads/master
Commit: 6aa806d2ad0df30d162693f8daa013dc6b0f110f
Parents: 01d0aae
Author: Christian Schneider <ch...@die-schneider.net>
Authored: Wed Aug 16 11:34:37 2017 +0200
Committer: Christian Schneider <ch...@die-schneider.net>
Committed: Wed Aug 16 11:34:37 2017 +0200
----------------------------------------------------------------------
.../karaf/jaas/modules/PrincipalAssert.java | 40 ------------
.../karaf/jaas/modules/PrincipalHelper.java | 29 +++++++++
.../karaf/jaas/modules/ldap/LdapCacheTest.java | 67 +++++++++-----------
.../properties/PropertiesBackingEngineTest.java | 2 +-
.../properties/PropertiesLoginModuleTest.java | 14 ++--
5 files changed, 67 insertions(+), 85 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/6aa806d2/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/PrincipalAssert.java
----------------------------------------------------------------------
diff --git a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/PrincipalAssert.java b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/PrincipalAssert.java
deleted file mode 100644
index c19fd2b..0000000
--- a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/PrincipalAssert.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * under the License.
- */
-package org.apache.karaf.jaas.modules;
-
-import static java.util.stream.Collectors.toList;
-
-import java.security.Principal;
-import java.util.List;
-import java.util.stream.Collectors;
-
-import javax.security.auth.Subject;
-
-import org.junit.Assert;
-
-public class PrincipalAssert {
-
- public static List<String> names(List<? extends Principal> principals) {
- return principals.stream().map(r->r.getName()).collect(toList());
- }
-
- public static void assertPrincipalNamed(Subject subject, Class<? extends Principal> clazz, String expectedName) {
- Long numMatching = subject.getPrincipals(clazz).stream()
- .filter(pr -> expectedName.equals(pr.getName()))
- .collect(Collectors.counting());
- Assert.assertEquals("Expected " + clazz.getSimpleName() + " principal in subject with name=" + expectedName,
- 1l, numMatching.intValue());
- }
-}
http://git-wip-us.apache.org/repos/asf/karaf/blob/6aa806d2/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/PrincipalHelper.java
----------------------------------------------------------------------
diff --git a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/PrincipalHelper.java b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/PrincipalHelper.java
new file mode 100644
index 0000000..9893193
--- /dev/null
+++ b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/PrincipalHelper.java
@@ -0,0 +1,29 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+package org.apache.karaf.jaas.modules;
+
+import static java.util.stream.Collectors.toList;
+
+import java.security.Principal;
+import java.util.Collection;
+import java.util.List;
+
+public class PrincipalHelper {
+
+ public static List<String> names(Collection<? extends Principal> principals) {
+ return principals.stream().map(r->r.getName()).collect(toList());
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/karaf/blob/6aa806d2/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapCacheTest.java
----------------------------------------------------------------------
diff --git a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapCacheTest.java b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapCacheTest.java
index 1b88a16..b9d252d 100644
--- a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapCacheTest.java
+++ b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapCacheTest.java
@@ -15,6 +15,16 @@
*/
package org.apache.karaf.jaas.modules.ldap;
+import static org.apache.karaf.jaas.modules.PrincipalHelper.names;
+import static org.hamcrest.Matchers.containsInAnyOrder;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertThat;
+import static org.junit.Assert.assertTrue;
+
+import java.io.File;
+import java.io.IOException;
+
+import javax.naming.NamingException;
import javax.naming.directory.Attribute;
import javax.naming.directory.Attributes;
import javax.naming.directory.BasicAttribute;
@@ -22,9 +32,6 @@ import javax.naming.directory.BasicAttributes;
import javax.naming.directory.DirContext;
import javax.security.auth.Subject;
import javax.security.auth.callback.CallbackHandler;
-import java.io.File;
-import java.io.IOException;
-import java.security.Principal;
import org.apache.directory.server.annotations.CreateLdapServer;
import org.apache.directory.server.annotations.CreateTransport;
@@ -42,9 +49,6 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
@RunWith(FrameworkRunner.class)
@CreateLdapServer(transports = {@CreateTransport(protocol = "LDAP")})
@CreateDS(name = "LdapLoginModuleTest-class",
@@ -78,42 +82,16 @@ public class LdapCacheTest extends AbstractLdapTestUnit {
assertEquals(2, subject.getPrincipals().size());
- boolean foundUser = false;
- boolean foundRole = false;
- for (Principal pr : subject.getPrincipals()) {
- if (pr instanceof UserPrincipal) {
- assertEquals("admin", pr.getName());
- foundUser = true;
- } else if (pr instanceof RolePrincipal) {
- assertEquals("admin", pr.getName());
- foundRole = true;
- }
- }
- assertTrue(foundUser);
- assertTrue(foundRole);
+ assertThat(names(subject.getPrincipals(UserPrincipal.class)), containsInAnyOrder("admin"));
+ assertThat(names(subject.getPrincipals(RolePrincipal.class)), containsInAnyOrder("admin"));
assertTrue(module.logout());
assertEquals("Principals should be gone as the user has logged out", 0, subject.getPrincipals().size());
- DirContext context = new LDAPCache(new LDAPOptions(options)).open();
-
- // Make "admin" user a member of a new "another" group
-
-// dn: cn=admin,ou=groups,dc=example,dc=com
-// objectClass: top
-// objectClass: groupOfNames
-// cn: admin
-// member: cn=admin,ou=people,dc=example,dc=com
- Attributes entry = new BasicAttributes();
- entry.put(new BasicAttribute("cn", "another"));
- Attribute oc = new BasicAttribute("objectClass");
- oc.add("top");
- oc.add("groupOfNames");
- entry.put(oc);
- Attribute mb = new BasicAttribute("member");
- mb.add("cn=admin,ou=people,dc=example,dc=com");
- entry.put(mb);
- context.createSubcontext("cn=another,ou=groups,dc=example,dc=com", entry);
+ LDAPCache ldapCache = new LDAPCache(new LDAPOptions(options));
+ DirContext context = ldapCache.open();
+ addUserToGroup(context, "cn=admin,ou=people,dc=example,dc=com", "another");
+ ldapCache.close();
Thread.sleep(100);
@@ -126,6 +104,19 @@ public class LdapCacheTest extends AbstractLdapTestUnit {
assertEquals("Postcondition", 3, subject.getPrincipals().size());
}
+ private void addUserToGroup(DirContext context, String userCn, String group) throws NamingException {
+ Attributes entry = new BasicAttributes();
+ entry.put(new BasicAttribute("cn", group));
+ Attribute oc = new BasicAttribute("objectClass");
+ oc.add("top");
+ oc.add("groupOfNames");
+ entry.put(oc);
+ Attribute mb = new BasicAttribute("member");
+ mb.add(userCn);
+ entry.put(mb);
+ context.createSubcontext("cn=" + group +",ou=groups,dc=example,dc=com", entry);
+ }
+
protected Properties ldapLoginModuleOptions() throws IOException {
String basedir = System.getProperty("basedir");
if (basedir == null) {
http://git-wip-us.apache.org/repos/asf/karaf/blob/6aa806d2/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/properties/PropertiesBackingEngineTest.java
----------------------------------------------------------------------
diff --git a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/properties/PropertiesBackingEngineTest.java b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/properties/PropertiesBackingEngineTest.java
index 0c811da..c1360d6 100644
--- a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/properties/PropertiesBackingEngineTest.java
+++ b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/properties/PropertiesBackingEngineTest.java
@@ -16,7 +16,7 @@
*/
package org.apache.karaf.jaas.modules.properties;
-import static org.apache.karaf.jaas.modules.PrincipalAssert.names;
+import static org.apache.karaf.jaas.modules.PrincipalHelper.names;
import static org.hamcrest.Matchers.containsInAnyOrder;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
http://git-wip-us.apache.org/repos/asf/karaf/blob/6aa806d2/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/properties/PropertiesLoginModuleTest.java
----------------------------------------------------------------------
diff --git a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/properties/PropertiesLoginModuleTest.java b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/properties/PropertiesLoginModuleTest.java
index 26d90a7..9d43fba 100644
--- a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/properties/PropertiesLoginModuleTest.java
+++ b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/properties/PropertiesLoginModuleTest.java
@@ -16,7 +16,9 @@
*/
package org.apache.karaf.jaas.modules.properties;
-import static org.apache.karaf.jaas.modules.PrincipalAssert.assertPrincipalNamed;
+import static org.apache.karaf.jaas.modules.PrincipalHelper.names;
+import static org.hamcrest.Matchers.containsInAnyOrder;
+import static org.junit.Assert.assertThat;
import java.io.File;
import java.io.IOException;
@@ -61,8 +63,8 @@ public class PropertiesLoginModuleTest {
Assert.assertEquals(2, subject.getPrincipals().size());
- assertPrincipalNamed(subject, UserPrincipal.class, "abc");
- assertPrincipalNamed(subject, RolePrincipal.class, "myrole");
+ assertThat(names(subject.getPrincipals(UserPrincipal.class)), containsInAnyOrder("abc"));
+ assertThat(names(subject.getPrincipals(RolePrincipal.class)), containsInAnyOrder("myrole"));
Assert.assertTrue(module.logout());
Assert.assertEquals("Principals should be gone as the user has logged out", 0, subject.getPrincipals().size());
@@ -122,9 +124,9 @@ public class PropertiesLoginModuleTest {
Assert.assertTrue(module.commit());
Assert.assertEquals(3, subject.getPrincipals().size());
- assertPrincipalNamed(subject, UserPrincipal.class, "pqr");
- assertPrincipalNamed(subject, GroupPrincipal.class, "group1");
- assertPrincipalNamed(subject, RolePrincipal.class, "r1");
+ assertThat(names(subject.getPrincipals(UserPrincipal.class)), containsInAnyOrder("pqr"));
+ assertThat(names(subject.getPrincipals(GroupPrincipal.class)), containsInAnyOrder("group1"));
+ assertThat(names(subject.getPrincipals(RolePrincipal.class)), containsInAnyOrder("r1"));
} finally {
if (!f.delete()) {
Assert.fail("Could not delete temporary file: " + f);
[3/5] karaf git commit: Use simple PrintStream
Posted by cs...@apache.org.
Use simple PrintStream
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/e973e3c7
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/e973e3c7
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/e973e3c7
Branch: refs/heads/master
Commit: e973e3c73cd431492bfc6ed6f1fb336f4f71ceaa
Parents: 71b136e
Author: Christian Schneider <ch...@die-schneider.net>
Authored: Wed Aug 16 11:50:58 2017 +0200
Committer: Christian Schneider <ch...@die-schneider.net>
Committed: Wed Aug 16 11:50:58 2017 +0200
----------------------------------------------------------------------
.../modules/ldap/GSSAPILdapLoginModuleTest.java | 77 +++++++++-----------
1 file changed, 33 insertions(+), 44 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/e973e3c7/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java
----------------------------------------------------------------------
diff --git a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java
index b0152f1..11daa72 100644
--- a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java
+++ b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java
@@ -14,9 +14,24 @@
*/
package org.apache.karaf.jaas.modules.ldap;
-import org.apache.commons.io.FileUtils;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.PrintStream;
+import java.security.Principal;
+import java.util.Collections;
+
+import javax.security.auth.Subject;
+import javax.security.auth.kerberos.KerberosPrincipal;
+import javax.security.auth.kerberos.KerberosTicket;
+import javax.security.auth.login.LoginException;
+
import org.apache.commons.io.IOUtils;
-import org.apache.commons.lang.SystemUtils;
import org.apache.directory.api.ldap.model.constants.SupportedSaslMechanisms;
import org.apache.directory.api.ldap.model.entry.DefaultEntry;
import org.apache.directory.api.ldap.model.entry.Entry;
@@ -53,22 +68,6 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
-import javax.security.auth.Subject;
-import javax.security.auth.kerberos.KerberosPrincipal;
-import javax.security.auth.kerberos.KerberosTicket;
-import javax.security.auth.login.LoginException;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.nio.charset.Charset;
-import java.security.Principal;
-import java.util.Collections;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
@RunWith(FrameworkRunner.class)
@CreateDS(name = "GSSAPILdapLoginModuleTest-class",
partitions =
@@ -317,34 +316,24 @@ public class GSSAPILdapLoginModuleTest extends AbstractKerberosITest {
private String createKrb5Conf(ChecksumType checksumType, EncryptionType encryptionType, boolean isTcp) throws IOException {
File file = folder.newFile("krb5.conf");
-
- String data = "";
-
- data += "[libdefaults]" + SystemUtils.LINE_SEPARATOR;
- data += "default_realm = " + REALM + SystemUtils.LINE_SEPARATOR;
- data += "default_tkt_enctypes = " + encryptionType.getName() + SystemUtils.LINE_SEPARATOR;
- data += "default_tgs_enctypes = " + encryptionType.getName() + SystemUtils.LINE_SEPARATOR;
- data += "permitted_enctypes = " + encryptionType.getName() + SystemUtils.LINE_SEPARATOR;
- // data += "default_checksum = " + checksumType.getName() + SystemUtils.LINE_SEPARATOR;
- // data += "ap_req_checksum_type = " + checksumType.getName() + SystemUtils.LINE_SEPARATOR;
- data += "default-checksum_type = " + checksumType.getName() + SystemUtils.LINE_SEPARATOR;
-
+ PrintStream out = new PrintStream(file);
+ out.println("[libdefaults]");
+ out.println("default_realm = " + REALM);
+ out.println("default_tkt_enctypes = " + encryptionType.getName());
+ out.println("default_tgs_enctypes = " + encryptionType.getName());
+ out.println("permitted_enctypes = " + encryptionType.getName());
+ out.println("default-checksum_type = " + checksumType.getName());
if (isTcp) {
- data += "udp_preference_limit = 1" + SystemUtils.LINE_SEPARATOR;
+ out.println("udp_preference_limit = 1");
}
-
-
- data += "[realms]" + SystemUtils.LINE_SEPARATOR;
- data += REALM + " = {" + SystemUtils.LINE_SEPARATOR;
- data += "kdc = " + HOSTNAME + ":" + kdcServer.getTransports()[0].getPort() + SystemUtils.LINE_SEPARATOR;
- data += "}" + SystemUtils.LINE_SEPARATOR;
-
- data += "[domain_realm]" + SystemUtils.LINE_SEPARATOR;
- data += "." + Strings.lowerCaseAscii(REALM) + " = " + REALM + SystemUtils.LINE_SEPARATOR;
- data += Strings.lowerCaseAscii(REALM) + " = " + REALM + SystemUtils.LINE_SEPARATOR;
-
- FileUtils.writeStringToFile(file, data, Charset.defaultCharset());
-
+ out.println("[realms]");
+ out.println(REALM + " = {");
+ out.println("kdc = " + HOSTNAME + ":" + kdcServer.getTransports()[0].getPort());
+ out.println("}");
+ out.println("[domain_realm]");
+ out.println("." + Strings.lowerCaseAscii(REALM) + " = " + REALM);
+ out.println(Strings.lowerCaseAscii(REALM) + " = " + REALM);
+ out.close();
return file.getAbsolutePath();
}
[5/5] karaf git commit: Extract common code in test
Posted by cs...@apache.org.
Extract common code in test
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/0853a353
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/0853a353
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/0853a353
Branch: refs/heads/master
Commit: 0853a353afa4c8eabad38327e3943b1543fd4c0a
Parents: 3b72701
Author: Christian Schneider <ch...@die-schneider.net>
Authored: Wed Aug 16 13:41:17 2017 +0200
Committer: Christian Schneider <ch...@die-schneider.net>
Committed: Wed Aug 16 13:41:17 2017 +0200
----------------------------------------------------------------------
.../jaas/modules/krb5/KarafKerberosITest.java | 51 ++++++++++
.../jaas/modules/krb5/Krb5LoginModuleTest.java | 102 +++----------------
.../modules/ldap/GSSAPILdapLoginModuleTest.java | 29 +-----
3 files changed, 66 insertions(+), 116 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/0853a353/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/krb5/KarafKerberosITest.java
----------------------------------------------------------------------
diff --git a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/krb5/KarafKerberosITest.java b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/krb5/KarafKerberosITest.java
new file mode 100644
index 0000000..0b57930
--- /dev/null
+++ b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/krb5/KarafKerberosITest.java
@@ -0,0 +1,51 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+package org.apache.karaf.jaas.modules.krb5;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.PrintStream;
+
+import org.apache.directory.api.util.Strings;
+import org.apache.directory.server.kerberos.kdc.AbstractKerberosITest;
+import org.apache.directory.shared.kerberos.codec.types.EncryptionType;
+import org.apache.directory.shared.kerberos.crypto.checksum.ChecksumType;
+
+public class KarafKerberosITest extends AbstractKerberosITest {
+
+ protected String createKrb5Conf(ChecksumType checksumType, EncryptionType encryptionType, boolean isTcp) throws IOException {
+ File file = folder.newFile("krb5.conf");
+ PrintStream out = new PrintStream(file);
+ out.println("[libdefaults]");
+ out.println("default_realm = " + REALM);
+ out.println("default_tkt_enctypes = " + encryptionType.getName());
+ out.println("default_tgs_enctypes = " + encryptionType.getName());
+ out.println("permitted_enctypes = " + encryptionType.getName());
+ out.println("default-checksum_type = " + checksumType.getName());
+ if (isTcp) {
+ out.println("udp_preference_limit = 1");
+ }
+ out.println("[realms]");
+ out.println(REALM + " = {");
+ out.println("kdc = " + HOSTNAME + ":" + kdcServer.getTransports()[0].getPort());
+ out.println("}");
+ out.println("[domain_realm]");
+ out.println("." + Strings.lowerCaseAscii(REALM) + " = " + REALM);
+ out.println(Strings.lowerCaseAscii(REALM) + " = " + REALM);
+ out.close();
+ return file.getAbsolutePath();
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/karaf/blob/0853a353/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/krb5/Krb5LoginModuleTest.java
----------------------------------------------------------------------
diff --git a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/krb5/Krb5LoginModuleTest.java b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/krb5/Krb5LoginModuleTest.java
index e6caf7b..d88955d 100644
--- a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/krb5/Krb5LoginModuleTest.java
+++ b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/krb5/Krb5LoginModuleTest.java
@@ -16,13 +16,10 @@
*/
package org.apache.karaf.jaas.modules.krb5;
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.lang.SystemUtils;
import org.apache.directory.api.ldap.model.constants.SupportedSaslMechanisms;
import org.apache.directory.api.ldap.model.entry.DefaultEntry;
import org.apache.directory.api.ldap.model.entry.Entry;
import org.apache.directory.api.ldap.model.exception.LdapException;
-import org.apache.directory.api.util.Strings;
import org.apache.directory.ldap.client.api.Krb5LoginConfiguration;
import org.apache.directory.server.annotations.CreateKdcServer;
import org.apache.directory.server.annotations.CreateLdapServer;
@@ -35,7 +32,6 @@ import org.apache.directory.server.core.annotations.CreateIndex;
import org.apache.directory.server.core.annotations.CreatePartition;
import org.apache.directory.server.core.integ.FrameworkRunner;
import org.apache.directory.server.core.kerberos.KeyDerivationInterceptor;
-import org.apache.directory.server.kerberos.kdc.AbstractKerberosITest;
import org.apache.directory.server.kerberos.kdc.KerberosTestUtils;
import org.apache.directory.server.kerberos.shared.crypto.encryption.KerberosKeyFactory;
import org.apache.directory.server.kerberos.shared.keytab.Keytab;
@@ -65,8 +61,6 @@ import javax.security.auth.kerberos.KerberosTicket;
import javax.security.auth.login.Configuration;
import javax.security.auth.login.LoginException;
import java.io.File;
-import java.io.IOException;
-import java.security.Principal;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Collections;
@@ -75,8 +69,10 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import static org.apache.karaf.jaas.modules.PrincipalHelper.names;
+import static org.hamcrest.Matchers.containsInAnyOrder;
import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.assertThat;
@RunWith(FrameworkRunner.class)
@CreateDS(name = "Krb5LoginModuleTest-class",
@@ -130,8 +126,7 @@ import static org.junit.Assert.assertTrue;
"objectClass: organizationalUnit",
"ou: users"
})
-public class Krb5LoginModuleTest extends AbstractKerberosITest {
-
+public class Krb5LoginModuleTest extends KarafKerberosITest {
@Before
public void setUp() throws Exception {
@@ -155,7 +150,6 @@ public class Krb5LoginModuleTest extends AbstractKerberosITest {
@Test
public void testKeytabSuccess() throws Exception {
-
Map<String, Object> props = new HashMap<>();
props.put("debug", "true");
props.put("useKeyTab", "true");
@@ -164,11 +158,9 @@ public class Krb5LoginModuleTest extends AbstractKerberosITest {
props.put("doNotPrompt", "true");
props.put("storeKey", "true");
props.put("detailed.login.exception", "true");
-
-
Subject subject = new Subject();
-
Krb5LoginModule module = new Krb5LoginModule();
+
module.initialize(subject, null, null, props);
assertEquals("Precondition", 0, subject.getPrincipals().size());
@@ -177,27 +169,11 @@ public class Krb5LoginModuleTest extends AbstractKerberosITest {
Assert.assertTrue(module.commit());
assertEquals(1, subject.getPrincipals().size());
+ assertThat(names(subject.getPrincipals(KerberosPrincipal.class)), containsInAnyOrder("hnelson@EXAMPLE.COM"));
- boolean foundUser = false;
- for (Principal pr : subject.getPrincipals()) {
- if (pr instanceof KerberosPrincipal) {
- assertEquals("hnelson@EXAMPLE.COM", pr.getName());
- foundUser = true;
- break;
- }
- }
- assertTrue(foundUser);
-
- boolean foundToken = false;
- for (Object crd : subject.getPrivateCredentials()) {
- if (crd instanceof KerberosTicket) {
- assertEquals("hnelson@EXAMPLE.COM", ((KerberosTicket) crd).getClient().getName());
- assertEquals("krbtgt/EXAMPLE.COM@EXAMPLE.COM", ((KerberosTicket) crd).getServer().getName());
- foundToken = true;
- break;
- }
- }
- assertTrue(foundToken);
+ KerberosTicket ticket = subject.getPrivateCredentials(KerberosTicket.class).iterator().next();
+ assertEquals("hnelson@EXAMPLE.COM", ticket.getClient().getName());
+ assertEquals("krbtgt/EXAMPLE.COM@EXAMPLE.COM", ticket.getServer().getName());
Assert.assertTrue(module.logout());
@@ -215,9 +191,7 @@ public class Krb5LoginModuleTest extends AbstractKerberosITest {
props.put("storeKey", "true");
props.put("detailed.login.exception", "true");
-
Subject subject = new Subject();
-
Krb5LoginModule module = new Krb5LoginModule();
module.initialize(subject, null, null, props);
@@ -230,7 +204,6 @@ public class Krb5LoginModuleTest extends AbstractKerberosITest {
@Test
public void testLoginSuccess() throws Exception {
Subject subject = new Subject();
-
Krb5LoginModule module = new Krb5LoginModule();
module.initialize(subject, new NamePasswordCallbackHandler("hnelson", "secret"), null, new HashMap<>());
@@ -240,27 +213,11 @@ public class Krb5LoginModuleTest extends AbstractKerberosITest {
Assert.assertTrue(module.commit());
assertEquals(1, subject.getPrincipals().size());
+ assertThat(names(subject.getPrincipals(KerberosPrincipal.class)), containsInAnyOrder("hnelson@EXAMPLE.COM"));
- boolean foundUser = false;
- for (Principal pr : subject.getPrincipals()) {
- if (pr instanceof KerberosPrincipal) {
- assertEquals("hnelson@EXAMPLE.COM", pr.getName());
- foundUser = true;
- break;
- }
- }
- assertTrue(foundUser);
-
- boolean foundToken = false;
- for (Object crd : subject.getPrivateCredentials()) {
- if (crd instanceof KerberosTicket) {
- assertEquals("hnelson@EXAMPLE.COM", ((KerberosTicket) crd).getClient().getName());
- assertEquals("krbtgt/EXAMPLE.COM@EXAMPLE.COM", ((KerberosTicket) crd).getServer().getName());
- foundToken = true;
- break;
- }
- }
- assertTrue(foundToken);
+ KerberosTicket ticket = subject.getPrivateCredentials(KerberosTicket.class).iterator().next();
+ assertEquals("hnelson@EXAMPLE.COM", ticket.getClient().getName());
+ assertEquals("krbtgt/EXAMPLE.COM@EXAMPLE.COM", ticket.getServer().getName());
Assert.assertTrue(module.logout());
@@ -328,39 +285,6 @@ public class Krb5LoginModuleTest extends AbstractKerberosITest {
conn.add(entry);
}
- private String createKrb5Conf(ChecksumType checksumType, EncryptionType encryptionType, boolean isTcp) throws IOException {
- File file = folder.newFile("krb5.conf");
-
- String data = "";
-
- data += "[libdefaults]" + SystemUtils.LINE_SEPARATOR;
- data += "default_realm = " + REALM + SystemUtils.LINE_SEPARATOR;
- data += "default_tkt_enctypes = " + encryptionType.getName() + SystemUtils.LINE_SEPARATOR;
- data += "default_tgs_enctypes = " + encryptionType.getName() + SystemUtils.LINE_SEPARATOR;
- data += "permitted_enctypes = " + encryptionType.getName() + SystemUtils.LINE_SEPARATOR;
- // data += "default_checksum = " + checksumType.getName() + SystemUtils.LINE_SEPARATOR;
- // data += "ap_req_checksum_type = " + checksumType.getName() + SystemUtils.LINE_SEPARATOR;
- data += "default-checksum_type = " + checksumType.getName() + SystemUtils.LINE_SEPARATOR;
-
- if (isTcp) {
- data += "udp_preference_limit = 1" + SystemUtils.LINE_SEPARATOR;
- }
-
-
- data += "[realms]" + SystemUtils.LINE_SEPARATOR;
- data += REALM + " = {" + SystemUtils.LINE_SEPARATOR;
- data += "kdc = " + HOSTNAME + ":" + kdcServer.getTransports()[0].getPort() + SystemUtils.LINE_SEPARATOR;
- data += "}" + SystemUtils.LINE_SEPARATOR;
-
- data += "[domain_realm]" + SystemUtils.LINE_SEPARATOR;
- data += "." + Strings.lowerCaseAscii(REALM) + " = " + REALM + SystemUtils.LINE_SEPARATOR;
- data += Strings.lowerCaseAscii(REALM) + " = " + REALM + SystemUtils.LINE_SEPARATOR;
-
- FileUtils.writeStringToFile(file, data);
-
- return file.getAbsolutePath();
- }
-
private KeytabEntry createKeytabEntry() throws ParseException {
String principalName = "hnelson@EXAMPLE.COM";
int principalType = 1;
http://git-wip-us.apache.org/repos/asf/karaf/blob/0853a353/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java
----------------------------------------------------------------------
diff --git a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java
index 11daa72..b664bc3 100644
--- a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java
+++ b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java
@@ -22,7 +22,6 @@ import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
-import java.io.PrintStream;
import java.security.Principal;
import java.util.Collections;
@@ -36,7 +35,6 @@ import org.apache.directory.api.ldap.model.constants.SupportedSaslMechanisms;
import org.apache.directory.api.ldap.model.entry.DefaultEntry;
import org.apache.directory.api.ldap.model.entry.Entry;
import org.apache.directory.api.ldap.model.exception.LdapException;
-import org.apache.directory.api.util.Strings;
import org.apache.directory.server.annotations.CreateKdcServer;
import org.apache.directory.server.annotations.CreateLdapServer;
import org.apache.directory.server.annotations.CreateTransport;
@@ -48,7 +46,6 @@ import org.apache.directory.server.core.annotations.CreateIndex;
import org.apache.directory.server.core.annotations.CreatePartition;
import org.apache.directory.server.core.integ.FrameworkRunner;
import org.apache.directory.server.core.kerberos.KeyDerivationInterceptor;
-import org.apache.directory.server.kerberos.kdc.AbstractKerberosITest;
import org.apache.directory.server.kerberos.kdc.KerberosTestUtils;
import org.apache.directory.server.ldap.handlers.sasl.cramMD5.CramMd5MechanismHandler;
import org.apache.directory.server.ldap.handlers.sasl.digestMD5.DigestMd5MechanismHandler;
@@ -63,6 +60,7 @@ import org.apache.felix.utils.properties.Properties;
import org.apache.karaf.jaas.boot.principal.RolePrincipal;
import org.apache.karaf.jaas.boot.principal.UserPrincipal;
import org.apache.karaf.jaas.modules.NamePasswordCallbackHandler;
+import org.apache.karaf.jaas.modules.krb5.KarafKerberosITest;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -131,7 +129,7 @@ import org.junit.runner.RunWith;
"cn: admin",
"member: uid=hnelson,ou=users,dc=example,dc=com"
})
-public class GSSAPILdapLoginModuleTest extends AbstractKerberosITest {
+public class GSSAPILdapLoginModuleTest extends KarafKerberosITest {
private static boolean loginConfigUpdated;
@@ -314,29 +312,6 @@ public class GSSAPILdapLoginModuleTest extends AbstractKerberosITest {
"ldap", "randall", servicePrincipal);
}
- private String createKrb5Conf(ChecksumType checksumType, EncryptionType encryptionType, boolean isTcp) throws IOException {
- File file = folder.newFile("krb5.conf");
- PrintStream out = new PrintStream(file);
- out.println("[libdefaults]");
- out.println("default_realm = " + REALM);
- out.println("default_tkt_enctypes = " + encryptionType.getName());
- out.println("default_tgs_enctypes = " + encryptionType.getName());
- out.println("permitted_enctypes = " + encryptionType.getName());
- out.println("default-checksum_type = " + checksumType.getName());
- if (isTcp) {
- out.println("udp_preference_limit = 1");
- }
- out.println("[realms]");
- out.println(REALM + " = {");
- out.println("kdc = " + HOSTNAME + ":" + kdcServer.getTransports()[0].getPort());
- out.println("}");
- out.println("[domain_realm]");
- out.println("." + Strings.lowerCaseAscii(REALM) + " = " + REALM);
- out.println(Strings.lowerCaseAscii(REALM) + " = " + REALM);
- out.close();
- return file.getAbsolutePath();
- }
-
private void createPrincipal(String rdn, String sn, String cn,
String uid, String userPassword, String principalName) throws LdapException {
Entry entry = new DefaultEntry();
[2/5] karaf git commit: Replace deprecated call
Posted by cs...@apache.org.
Replace deprecated call
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/71b136ed
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/71b136ed
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/71b136ed
Branch: refs/heads/master
Commit: 71b136ed8307f6470e32874dfed627844c9fc666
Parents: 6aa806d
Author: Christian Schneider <ch...@die-schneider.net>
Authored: Wed Aug 16 11:44:38 2017 +0200
Committer: Christian Schneider <ch...@die-schneider.net>
Committed: Wed Aug 16 11:44:38 2017 +0200
----------------------------------------------------------------------
.../apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/71b136ed/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java
----------------------------------------------------------------------
diff --git a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java
index 47ea240..b0152f1 100644
--- a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java
+++ b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/GSSAPILdapLoginModuleTest.java
@@ -61,6 +61,7 @@ import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
+import java.nio.charset.Charset;
import java.security.Principal;
import java.util.Collections;
@@ -342,7 +343,7 @@ public class GSSAPILdapLoginModuleTest extends AbstractKerberosITest {
data += "." + Strings.lowerCaseAscii(REALM) + " = " + REALM + SystemUtils.LINE_SEPARATOR;
data += Strings.lowerCaseAscii(REALM) + " = " + REALM + SystemUtils.LINE_SEPARATOR;
- FileUtils.writeStringToFile(file, data);
+ FileUtils.writeStringToFile(file, data, Charset.defaultCharset());
return file.getAbsolutePath();
}
[4/5] karaf git commit: Simplify assertions
Posted by cs...@apache.org.
Simplify assertions
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/3b72701c
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/3b72701c
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/3b72701c
Branch: refs/heads/master
Commit: 3b72701cdbf06961d2185348b29cbfd5e1f92763
Parents: e973e3c
Author: Christian Schneider <ch...@die-schneider.net>
Authored: Wed Aug 16 11:52:11 2017 +0200
Committer: Christian Schneider <ch...@die-schneider.net>
Committed: Wed Aug 16 11:52:11 2017 +0200
----------------------------------------------------------------------
.../modules/ldap/LdapCaseInsensitiveDNTest.java | 20 +--
.../jaas/modules/ldap/LdapLoginModuleTest.java | 131 +++----------------
2 files changed, 23 insertions(+), 128 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/3b72701c/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapCaseInsensitiveDNTest.java
----------------------------------------------------------------------
diff --git a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapCaseInsensitiveDNTest.java b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapCaseInsensitiveDNTest.java
index bcf460d..8e3a56e 100644
--- a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapCaseInsensitiveDNTest.java
+++ b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapCaseInsensitiveDNTest.java
@@ -15,12 +15,14 @@
*/
package org.apache.karaf.jaas.modules.ldap;
+import static org.apache.karaf.jaas.modules.PrincipalHelper.names;
+import static org.hamcrest.Matchers.containsInAnyOrder;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertThat;
import static org.junit.Assert.assertTrue;
import java.io.File;
import java.io.IOException;
-import java.security.Principal;
import javax.security.auth.Subject;
@@ -65,20 +67,8 @@ public class LdapCaseInsensitiveDNTest extends LdapLoginModuleTest {
assertTrue(module.commit());
assertEquals(2, subject.getPrincipals().size());
-
- boolean foundUser = false;
- boolean foundRole = false;
- for (Principal pr : subject.getPrincipals()) {
- if (pr instanceof UserPrincipal) {
- assertEquals("admin", pr.getName());
- foundUser = true;
- } else if (pr instanceof RolePrincipal) {
- assertEquals("admin", pr.getName());
- foundRole = true;
- }
- }
- assertTrue(foundUser);
- assertTrue(foundRole);
+ assertThat(names(subject.getPrincipals(UserPrincipal.class)), containsInAnyOrder("admin"));
+ assertThat(names(subject.getPrincipals(RolePrincipal.class)), containsInAnyOrder("admin"));
assertTrue(module.logout());
assertEquals("Principals should be gone as the user has logged out", 0, subject.getPrincipals().size());
http://git-wip-us.apache.org/repos/asf/karaf/blob/3b72701c/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapLoginModuleTest.java
----------------------------------------------------------------------
diff --git a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapLoginModuleTest.java b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapLoginModuleTest.java
index 140d5df..847dcf3 100644
--- a/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapLoginModuleTest.java
+++ b/jaas/modules/src/test/java/org/apache/karaf/jaas/modules/ldap/LdapLoginModuleTest.java
@@ -27,6 +27,7 @@ import org.apache.karaf.jaas.boot.principal.RolePrincipal;
import org.apache.karaf.jaas.boot.principal.UserPrincipal;
import org.apache.karaf.jaas.modules.NamePasswordCallbackHandler;
import org.apache.log4j.Level;
+import org.hamcrest.Matchers;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -37,13 +38,12 @@ import javax.security.auth.login.LoginException;
import java.io.File;
import java.io.IOException;
-import java.security.Principal;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertThat;
import static org.junit.Assert.assertTrue;
+import static org.apache.karaf.jaas.modules.PrincipalHelper.names;
+import static org.hamcrest.Matchers.containsInAnyOrder;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
@@ -79,20 +79,8 @@ public class LdapLoginModuleTest extends AbstractLdapTestUnit {
assertTrue(module.commit());
assertEquals(2, subject.getPrincipals().size());
-
- boolean foundUser = false;
- boolean foundRole = false;
- for (Principal pr : subject.getPrincipals()) {
- if (pr instanceof UserPrincipal) {
- assertEquals("admin", pr.getName());
- foundUser = true;
- } else if (pr instanceof RolePrincipal) {
- assertEquals("admin", pr.getName());
- foundRole = true;
- }
- }
- assertTrue(foundUser);
- assertTrue(foundRole);
+ assertThat(names(subject.getPrincipals(UserPrincipal.class)), containsInAnyOrder("admin"));
+ assertThat(names(subject.getPrincipals(RolePrincipal.class)), containsInAnyOrder("admin"));
assertTrue(module.logout());
assertEquals("Principals should be gone as the user has logged out", 0, subject.getPrincipals().size());
@@ -119,21 +107,8 @@ public class LdapLoginModuleTest extends AbstractLdapTestUnit {
assertTrue(module.commit());
assertEquals(1, subject.getPrincipals().size());
-
- boolean foundUser = false;
- boolean foundRole = false;
- for (Principal pr : subject.getPrincipals()) {
- if (pr instanceof UserPrincipal) {
- assertEquals("cheese", pr.getName());
- foundUser = true;
- } else if (pr instanceof RolePrincipal) {
- assertEquals("admin", pr.getName());
- foundRole = true;
- }
- }
- assertTrue(foundUser);
- // cheese is not an admin so no roles should be returned
- assertFalse(foundRole);
+ assertThat(names(subject.getPrincipals(UserPrincipal.class)), containsInAnyOrder("cheese"));
+ assertThat(names(subject.getPrincipals(RolePrincipal.class)), Matchers.empty());
assertTrue(module.logout());
assertEquals("Principals should be gone as the user has logged out", 0, subject.getPrincipals().size());
@@ -152,21 +127,8 @@ public class LdapLoginModuleTest extends AbstractLdapTestUnit {
assertTrue(module.commit());
assertEquals(1, subject.getPrincipals().size());
-
- boolean foundUser = false;
- boolean foundRole = false;
- for (Principal pr : subject.getPrincipals()) {
- if (pr instanceof UserPrincipal) {
- assertEquals("cheese", pr.getName());
- foundUser = true;
- } else if (pr instanceof RolePrincipal) {
- assertEquals("admin", pr.getName());
- foundRole = true;
- }
- }
- assertTrue(foundUser);
- // cheese is not an admin so no roles should be returned
- assertFalse(foundRole);
+ assertThat(names(subject.getPrincipals(UserPrincipal.class)), containsInAnyOrder("cheese"));
+ assertThat(names(subject.getPrincipals(RolePrincipal.class)), Matchers.empty());
assertTrue(module.logout());
assertEquals("Principals should be gone as the user has logged out", 0, subject.getPrincipals().size());
@@ -234,20 +196,8 @@ public class LdapLoginModuleTest extends AbstractLdapTestUnit {
assertTrue(module.commit());
assertEquals(2, subject.getPrincipals().size());
-
- boolean foundUser = false;
- boolean foundRole = false;
- for (Principal principal : subject.getPrincipals()) {
- if (principal instanceof UserPrincipal) {
- assertEquals("admin", principal.getName());
- foundUser = true;
- } else if (principal instanceof RolePrincipal) {
- assertEquals("karaf", principal.getName());
- foundRole = true;
- }
- }
- assertTrue(foundUser);
- assertTrue(foundRole);
+ assertThat(names(subject.getPrincipals(UserPrincipal.class)), containsInAnyOrder("admin"));
+ assertThat(names(subject.getPrincipals(RolePrincipal.class)), containsInAnyOrder("karaf"));
assertTrue(module.logout());
assertEquals("Principals should be gone as the user has logged out", 0, subject.getPrincipals().size());
@@ -266,23 +216,8 @@ public class LdapLoginModuleTest extends AbstractLdapTestUnit {
assertTrue(module.commit());
assertEquals(4, subject.getPrincipals().size());
-
- final List<String> roles = new ArrayList<>(Arrays.asList("karaf", "test", "another"));
-
- boolean foundUser = false;
- boolean foundRole = false;
- for (Principal principal : subject.getPrincipals()) {
- if (principal instanceof UserPrincipal) {
- assertEquals("admin", principal.getName());
- foundUser = true;
- } else if (principal instanceof RolePrincipal) {
- assertTrue(roles.remove(principal.getName()));
- foundRole = true;
- }
- }
- assertTrue(foundUser);
- assertTrue(foundRole);
- assertTrue(roles.isEmpty());
+ assertThat(names(subject.getPrincipals(UserPrincipal.class)), containsInAnyOrder("admin"));
+ assertThat(names(subject.getPrincipals(RolePrincipal.class)), containsInAnyOrder("karaf", "test", "another"));
assertTrue(module.logout());
assertEquals("Principals should be gone as the user has logged out", 0, subject.getPrincipals().size());
@@ -301,23 +236,8 @@ public class LdapLoginModuleTest extends AbstractLdapTestUnit {
assertTrue(module.commit());
assertEquals(4, subject.getPrincipals().size());
-
- final List<String> roles = new ArrayList<>(Arrays.asList("karaf", "test", "another"));
-
- boolean foundUser = false;
- boolean foundRole = false;
- for (Principal pr : subject.getPrincipals()) {
- if (pr instanceof UserPrincipal) {
- assertEquals("admin", pr.getName());
- foundUser = true;
- } else if (pr instanceof RolePrincipal) {
- assertTrue(roles.remove(pr.getName()));
- foundRole = true;
- }
- }
- assertTrue(foundUser);
- assertTrue(foundRole);
- assertTrue(roles.isEmpty());
+ assertThat(names(subject.getPrincipals(UserPrincipal.class)), containsInAnyOrder("admin"));
+ assertThat(names(subject.getPrincipals(RolePrincipal.class)), containsInAnyOrder("karaf", "test", "another"));
assertTrue(module.logout());
assertEquals("Principals should be gone as the user has logged out", 0, subject.getPrincipals().size());
@@ -340,23 +260,8 @@ public class LdapLoginModuleTest extends AbstractLdapTestUnit {
assertTrue(module.commit());
assertEquals(2, subject.getPrincipals().size());
-
- final List<String> roles = new ArrayList<>(Arrays.asList("karaf"));
-
- boolean foundUser = false;
- boolean foundRole = false;
- for (Principal principal : subject.getPrincipals()) {
- if (principal instanceof UserPrincipal) {
- assertEquals("admin", principal.getName());
- foundUser = true;
- } else if (principal instanceof RolePrincipal) {
- assertTrue(roles.remove(principal.getName()));
- foundRole = true;
- }
- }
- assertTrue(foundUser);
- assertTrue(foundRole);
- assertTrue(roles.isEmpty());
+ assertThat(names(subject.getPrincipals(UserPrincipal.class)), containsInAnyOrder("admin"));
+ assertThat(names(subject.getPrincipals(RolePrincipal.class)), containsInAnyOrder("karaf"));
assertTrue(module.logout());
assertEquals("Principals should be gone as the user has logged out", 0, subject.getPrincipals().size());