/******************************************************************************* * Copyright (c) 2012 RelationWare, Benno Luthiger * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * RelationWare, Benno Luthiger ******************************************************************************/ package org.ripla.useradmin.admin; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import org.junit.Test; import org.osgi.service.useradmin.Group; import org.osgi.service.useradmin.Role; import org.osgi.service.useradmin.User; import org.osgi.service.useradmin.UserAdmin; /** * @author Luthiger */ public class RiplaGroupTest { private static final String USER_NAME = "test.user"; private static final String GROUP_NAME = "test.group"; private static final String TEST_GROUP_NAME = "testing.group"; /** * Test method for * {@link org.ripla.useradmin.admin.RiplaGroup#addMember(org.osgi.service.useradmin.Role)} * . * * @throws Exception */ @Test public void testAddMember() throws Exception { // NOPMD by Luthiger on // 09.09.12 00:05 final UserAdmin lUserAdmin = TestRiplaUserAdmin.createUserAdmin(); final User lUser = (User) lUserAdmin.createRole(USER_NAME, Role.USER); final Group lGroup = (Group) lUserAdmin.createRole(GROUP_NAME, Role.GROUP); final Group lTestGroup = (Group) lUserAdmin.createRole(TEST_GROUP_NAME, Role.GROUP); assertTrue("Could not add member", lTestGroup.addMember(lUser)); // NOPMD // by // Luthiger // on // 09.09.12 // 00:11 assertTrue("Could not add member", lTestGroup.addMember(lGroup)); assertFalse("Should not add member", lTestGroup.addMember(lUser)); // NOPMD // by // Luthiger // on // 09.09.12 // 00:11 assertFalse("Should not add member", lTestGroup.addMember(lGroup)); final Role[] lMembers = lTestGroup.getMembers(); assertEquals("Wrong length", 2, lMembers.length); // NOPMD by Luthiger // on 09.09.12 00:11 } /** * Test method for {@link org.ripla.useradmin.admin.RiplaGroup#getMembers()} * . * * @throws Exception */ @Test public void testGetMembers() throws Exception { // NOPMD by Luthiger on // 09.09.12 00:06 final Group lGroup = TestRiplaUserAdmin.createGroup(TEST_GROUP_NAME); assertNull("Group should not contain members", lGroup.getMembers()); } /** * Test method for * {@link org.ripla.useradmin.admin.RiplaGroup#addRequiredMember(org.osgi.service.useradmin.Role)} * . * * @throws Exception */ @Test public void testAddRequiredMember() throws Exception { // NOPMD by Luthiger // on 09.09.12 00:07 final UserAdmin lUserAdmin = TestRiplaUserAdmin.createUserAdmin(); final User lUser = (User) lUserAdmin.createRole(USER_NAME, Role.USER); final Group lGroup = (Group) lUserAdmin.createRole(GROUP_NAME, Role.GROUP); final Group lTestGroup = (Group) lUserAdmin.createRole(TEST_GROUP_NAME, Role.GROUP); assertTrue("Could not add member", lTestGroup.addRequiredMember(lUser)); assertTrue("Could not add member", lTestGroup.addRequiredMember(lGroup)); assertFalse("Should not add member", lTestGroup.addRequiredMember(lUser)); assertFalse("Should not add member", lTestGroup.addRequiredMember(lGroup)); final Role[] lMembers = lTestGroup.getRequiredMembers(); assertEquals("Wrong length", 2, lMembers.length); } /** * Test method for * {@link org.ripla.useradmin.admin.RiplaGroup#getRequiredMembers()}. * * @throws Exception */ @Test public void testGetRequiredMembers() throws Exception { // NOPMD by Luthiger // on 09.09.12 00:07 final Group lGroup = TestRiplaUserAdmin.createGroup(TEST_GROUP_NAME); assertNull("Group should not contain members", lGroup.getRequiredMembers()); } /** * Test method for * {@link org.ripla.useradmin.admin.RiplaGroup#removeMember(org.osgi.service.useradmin.Role)} * . * * @throws Exception */ @Test public void testRemoveMember() throws Exception { // NOPMD by Luthiger on // 09.09.12 00:07 final UserAdmin lUserAdmin = TestRiplaUserAdmin.createUserAdmin(); final Group lTestGroup = (Group) lUserAdmin.createRole(TEST_GROUP_NAME, Role.GROUP); final User lUser1 = (User) lUserAdmin.createRole(USER_NAME, Role.USER); final User lUser2 = (User) lUserAdmin.createRole(USER_NAME + ".r", Role.USER); final Group lGroup1 = (Group) lUserAdmin.createRole(GROUP_NAME, Role.GROUP); final Group lGroup2 = (Group) lUserAdmin.createRole(GROUP_NAME + ".r", Role.GROUP); lTestGroup.addMember(lUser1); lTestGroup.addRequiredMember(lUser2); lTestGroup.addMember(lGroup1); lTestGroup.addRequiredMember(lGroup2); assertEquals("Wrong length", 2, lTestGroup.getMembers().length); assertEquals("Wrong length", 2, lTestGroup.getRequiredMembers().length); assertTrue("Could not remove member", lTestGroup.removeMember(lUser1)); // NOPMD assertTrue("Could not remove member", lTestGroup.removeMember(lGroup1)); assertFalse("Should not remove member", lTestGroup.removeMember(lUser1)); assertNull("Should not contain members", lTestGroup.getMembers()); assertEquals("Wrong length", 2, lTestGroup.getRequiredMembers().length); assertTrue("Could not remove member", lTestGroup.removeMember(lUser2)); assertTrue("Could not remove member", lTestGroup.removeMember(lGroup2)); assertNull("Should not contain members", lTestGroup.getRequiredMembers()); } }