package org.argeo.osgi.useradmin;
+import java.util.Arrays;
+import java.util.List;
+
import junit.framework.TestCase;
+import org.osgi.service.useradmin.Authorization;
import org.osgi.service.useradmin.Group;
import org.osgi.service.useradmin.Role;
import org.osgi.service.useradmin.User;
.getResourceAsStream("basic.ldif"));
User rootUser = (User) userAdmin.getRole(ROOT_USER_DN);
assertNotNull(rootUser);
+ User demoUser = (User) userAdmin.getRole(DEMO_USER_DN);
+ assertNotNull(demoUser);
+
Group adminGroup = (Group) userAdmin.getRole(ADMIN_GROUP_DN);
assertNotNull(adminGroup);
Role[] members = adminGroup.getMembers();
assertEquals(1, members.length);
- assertEquals(rootUser.getName(), members[0].getName());
+ assertEquals(rootUser, members[0]);
+
+ Group editorGroup = (Group) userAdmin.getRole(EDITOR_GROUP_DN);
+ assertNotNull(editorGroup);
+ members = editorGroup.getMembers();
+ assertEquals(2, members.length);
+ assertEquals(adminGroup, members[0]);
+ assertEquals(demoUser, members[1]);
+
+ Authorization rootAuth = userAdmin.getAuthorization(rootUser);
+ List<String> rootRoles = Arrays.asList(rootAuth.getRoles());
+ assertEquals(3, rootRoles.size());
+ assertTrue(rootRoles.contains(ROOT_USER_DN));
+ assertTrue(rootRoles.contains(ADMIN_GROUP_DN));
+ assertTrue(rootRoles.contains(EDITOR_GROUP_DN));
}
}