Search in sources :

Example 81 with Role

use of org.osgi.service.useradmin.Role in project felix by apache.

the class UserAdminImplTest method testCreateNonExistingUserOk.

/**
 * Tests that creating a non-existing role succeeds and yields a valid role instance.
 */
public void testCreateNonExistingUserOk() {
    Role role = null;
    role = m_userAdmin.createRole("user1", Role.USER);
    assertNotNull(role);
    assertEquals("user1", role.getName());
}
Also used : Role(org.osgi.service.useradmin.Role)

Example 82 with Role

use of org.osgi.service.useradmin.Role in project felix by apache.

the class UserAdminImplTest method testGetExistingUserWithNonUniqueKeyValueFail.

/**
 * Tests that getting an existing user with a non unique key-value pair does not work and yields null.
 */
public void testGetExistingUserWithNonUniqueKeyValueFail() {
    Role user1 = m_userAdmin.createRole("user1", Role.USER);
    user1.getProperties().put("key1", "value1");
    user1.getProperties().put("key2", "constant");
    Role user2 = m_userAdmin.createRole("user2", Role.USER);
    user2.getProperties().put("key1", "value2");
    user2.getProperties().put("key2", "constant");
    Role group1 = m_userAdmin.createRole("group1", Role.GROUP);
    group1.getProperties().put("key1", "value3");
    assertNull(m_userAdmin.getUser("key2", "constant"));
}
Also used : Role(org.osgi.service.useradmin.Role)

Example 83 with Role

use of org.osgi.service.useradmin.Role in project felix by apache.

the class UserAdminImplTest method testGetExistingGroupFail.

/**
 * Tests that getting a existing group with an unique key-value pair does not work and yields null.
 */
public void testGetExistingGroupFail() {
    Role user1 = m_userAdmin.createRole("user1", Role.USER);
    user1.getProperties().put("key1", "value1");
    user1.getProperties().put("key2", "constant");
    Role user2 = m_userAdmin.createRole("user2", Role.USER);
    user2.getProperties().put("key1", "value2");
    user1.getProperties().put("key2", "constant");
    Role group1 = m_userAdmin.createRole("group1", Role.GROUP);
    group1.getProperties().put("key1", "value3");
    assertNull(m_userAdmin.getUser("key1", "value3"));
}
Also used : Role(org.osgi.service.useradmin.Role)

Example 84 with Role

use of org.osgi.service.useradmin.Role in project felix by apache.

the class UserAdminImplTest method testUserAnyoneIsNotPartOfAuthorizedRolesOk.

/**
 * Tests that the list of roles in an {@link Authorization} does not contain the any-user, although it is defined as group member.
 */
public void testUserAnyoneIsNotPartOfAuthorizedRolesOk() {
    Role userAnyone = m_userAdmin.getRole(Role.USER_ANYONE);
    User user1 = (User) m_userAdmin.createRole("user1", Role.USER);
    Group group1 = (Group) m_userAdmin.createRole("group1", Role.GROUP);
    assertTrue(group1.addRequiredMember(user1));
    assertTrue(group1.addMember(userAnyone));
    Authorization auth = m_userAdmin.getAuthorization(user1);
    assertNotNull(auth);
    assertTrue(auth.hasRole("group1"));
    String[] roles = auth.getRoles();
    assertNotNull(roles);
    for (int i = 0; i < roles.length; i++) {
        assertFalse(Role.USER_ANYONE.equals(roles[i]));
    }
}
Also used : Role(org.osgi.service.useradmin.Role) Authorization(org.osgi.service.useradmin.Authorization) Group(org.osgi.service.useradmin.Group) User(org.osgi.service.useradmin.User)

Example 85 with Role

use of org.osgi.service.useradmin.Role in project felix by apache.

the class UserAdminImplTest method testGetRolesWithoutFilterOk.

/**
 * Tests that getting multiple roles based on a OSGi-filter works and yields the correct result.
 */
public void testGetRolesWithoutFilterOk() throws Exception {
    Role user1 = m_userAdmin.createRole("user1", Role.USER);
    user1.getProperties().put("key", "value1");
    Role user2 = m_userAdmin.createRole("user2", Role.USER);
    user2.getProperties().put("key", "value2");
    Role group1 = m_userAdmin.createRole("group1", Role.GROUP);
    group1.getProperties().put("key", "value3");
    Role group2 = m_userAdmin.createRole("group2", Role.GROUP);
    group2.getProperties().put("key", "otherValue3");
    Role[] roles = m_userAdmin.getRoles(null);
    assertNotNull(roles);
    assertEquals(4, roles.length);
    List roleList = Arrays.asList(roles);
    assertTrue(roleList.contains(user1));
    assertTrue(roleList.contains(user2));
    assertTrue(roleList.contains(group1));
    assertTrue(roleList.contains(group2));
}
Also used : Role(org.osgi.service.useradmin.Role) List(java.util.List)

Aggregations

Role (org.osgi.service.useradmin.Role)98 Group (org.osgi.service.useradmin.Group)29 IOException (java.io.IOException)17 CountDownLatch (java.util.concurrent.CountDownLatch)13 List (java.util.List)9 User (org.osgi.service.useradmin.User)9 ArrayList (java.util.ArrayList)7 Test (org.junit.Test)6 Collection (java.util.Collection)5 UserAdmin (org.osgi.service.useradmin.UserAdmin)5 DBCollection (com.mongodb.DBCollection)4 Iterator (java.util.Iterator)4 BackendException (org.apache.felix.useradmin.BackendException)4 ObservableRole (org.apache.felix.useradmin.impl.role.ObservableRole)4 Authorization (org.osgi.service.useradmin.Authorization)4 WriteResult (com.mongodb.WriteResult)3 Filter (org.osgi.framework.Filter)3 BasicDBObject (com.mongodb.BasicDBObject)2 DBObject (com.mongodb.DBObject)2 Dictionary (java.util.Dictionary)2