import junit.framework.TestCase;
+import org.apache.commons.codec.binary.Base64;
+import org.apache.commons.codec.digest.DigestUtils;
import org.osgi.service.useradmin.Authorization;
import org.osgi.service.useradmin.Group;
import org.osgi.service.useradmin.Role;
public void testBasicUserAdmin() {
LdifUserAdmin userAdmin = new LdifUserAdmin(getClass()
.getResourceAsStream("basic.ldif"));
+
+ // users
User rootUser = (User) userAdmin.getRole(ROOT_USER_DN);
assertNotNull(rootUser);
User demoUser = (User) userAdmin.getRole(DEMO_USER_DN);
assertNotNull(demoUser);
+ // groups
Group adminGroup = (Group) userAdmin.getRole(ADMIN_GROUP_DN);
assertNotNull(adminGroup);
Role[] members = adminGroup.getMembers();
assertTrue(rootRoles.contains(ROOT_USER_DN));
assertTrue(rootRoles.contains(ADMIN_GROUP_DN));
assertTrue(rootRoles.contains(EDITOR_GROUP_DN));
+
+ // properties
+ assertEquals("root@localhost", rootUser.getProperties().get("mail"));
+
+ // credentials
+ byte[] hashedPassword = ("{SHA}" + Base64
+ .encodeBase64String(DigestUtils.sha1("demo".getBytes())))
+ .getBytes();
+ assertTrue(rootUser.hasCredential("userpassword", hashedPassword));
+ assertTrue(demoUser.hasCredential("userpassword", hashedPassword));
}
}