protected DummyGroup getDummyGroup(String dummyInstanceName, String name) throws SchemaViolationException, ConflictException, InterruptedException { DummyResource dummyResource = DummyResource.getInstance(dummyInstanceName); try { return dummyResource.getGroupByName(name); } catch (ConnectException e) { throw new IllegalStateException(e.getMessage(),e); } catch (FileNotFoundException e) { throw new IllegalStateException(e.getMessage(),e); } }
protected void assertNoDummyGroupMember(String dummyInstanceName, String dummyGroupName, String accountId) throws ConnectException, FileNotFoundException, SchemaViolationException, ConflictException, InterruptedException { DummyResource dummyResource = DummyResource.getInstance(dummyInstanceName); DummyGroup group = dummyResource.getGroupByName(dummyGroupName); IntegrationTestTools.assertNoGroupMember(group, accountId); }
public DummyGroupAsserter<Void> assertGroupByName(String name) throws ConnectException, FileNotFoundException, SchemaViolationException, ConflictException, InterruptedException { DummyGroup group = dummyResource.getGroupByName(name); assertNotNull("Group "+name+" does not exist on dummy resource "+getName(), group); return assertGroup(group); }
protected void assertDummyGroupMember(String dummyInstanceName, String dummyGroupName, String accountId) throws ConnectException, FileNotFoundException, SchemaViolationException, ConflictException, InterruptedException { DummyResource dummyResource = DummyResource.getInstance(dummyInstanceName); DummyGroup group = dummyResource.getGroupByName(dummyGroupName); assertNotNull("No dummy group "+dummyGroupName, group); IntegrationTestTools.assertGroupMember(group, accountId); }
protected DummyGroup getDummyGroup(String icfName, String icfUid) throws ConnectException, FileNotFoundException, SchemaViolationException, ConflictException, InterruptedException { // if (isNameUnique()) { if (isIcfNameUidSame()) { return dummyResource.getGroupByName(icfName); } else { return dummyResource.getGroupById(icfUid); } }
private void assertNoGroupMember(String groupName, String accountName, DummyResource dummyResource) throws ConnectException, FileNotFoundException, SchemaViolationException, ConflictException, InterruptedException { DummyGroup dummyGroup = dummyResource.getGroupByName(groupName); assertNotNull("No group " + dummyGroup + " on " + dummyResource, dummyGroup); display("group", dummyGroup); assertNoGroupMember(dummyGroup, accountName); }
private void assertGroupMember(String groupName, String accountName, DummyResource dummyResource) throws ConnectException, FileNotFoundException, SchemaViolationException, ConflictException, InterruptedException { DummyGroup dummyGroup = dummyResource.getGroupByName(groupName); assertNotNull("No group " + dummyGroup + " on " + dummyResource, dummyGroup); display("group", dummyGroup); assertGroupMember(dummyGroup, accountName); }
protected DummyGroup getDummyGroupAssert(String icfName, String icfUid) throws ConnectException, FileNotFoundException, SchemaViolationException, ConflictException, InterruptedException { // if (isNameUnique()) { if (isIcfNameUidSame()) { return dummyResource.getGroupByName(icfName); } else { DummyGroup group = dummyResource.getGroupById(icfUid); assertNotNull("No dummy group with ICF UID "+icfUid+" (expected name "+icfName+")", group); assertEquals("Unexpected name in "+group, icfName, group.getName()); return group; } }
private void assertJackJustAccount() throws SchemaViolationException, ConflictException, ObjectNotFoundException, SchemaException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException, ConnectException, FileNotFoundException, InterruptedException { PrismObject<UserType> userBefore = getUser(USER_JACK_OID); display("User before", userBefore); assertAssignments(userBefore, 1); assertDefaultDummyAccount(ACCOUNT_JACK_DUMMY_USERNAME, ACCOUNT_JACK_DUMMY_FULLNAME, true); DummyGroup dummyGroup = getDummyResource().getGroupByName(GROUP_DUMMY_SWASHBUCKLERS_NAME); assertNoGroupMember(dummyGroup, ACCOUNT_JACK_DUMMY_USERNAME); }
/** * Account: yes, group: yes */ private void assertJackAccountSwashbuckler() throws SchemaViolationException, ConflictException, ConnectException, FileNotFoundException, InterruptedException { assertDefaultDummyAccount(ACCOUNT_JACK_DUMMY_USERNAME, ACCOUNT_JACK_DUMMY_FULLNAME, true); DummyGroup dummyGroup = getDummyResource().getGroupByName(GROUP_DUMMY_SWASHBUCKLERS_NAME); assertNotNull("No group on dummy resource", dummyGroup); display("Group", dummyGroup); assertEquals("Wrong group description", GROUP_DUMMY_SWASHBUCKLERS_DESCRIPTION, dummyGroup.getAttributeValue(DummyResourceContoller.DUMMY_GROUP_ATTRIBUTE_DESCRIPTION)); assertGroupMember(dummyGroup, ACCOUNT_JACK_DUMMY_USERNAME); }
/** * Account: no, group: no */ private void assertJackNoAccountNoSwashbuckler() throws ConnectException, FileNotFoundException, SchemaViolationException, ConflictException, InterruptedException { DummyGroup dummyGroup = getDummyResource().getGroupByName(GROUP_DUMMY_SWASHBUCKLERS_NAME); assertNotNull("No group on dummy resource", dummyGroup); display("Group", dummyGroup); assertEquals("Wrong group description", GROUP_DUMMY_SWASHBUCKLERS_DESCRIPTION, dummyGroup.getAttributeValue(DummyResourceContoller.DUMMY_GROUP_ATTRIBUTE_DESCRIPTION)); assertNoGroupMember(dummyGroup, ACCOUNT_JACK_DUMMY_USERNAME); assertNoDummyAccount(ACCOUNT_JACK_DUMMY_USERNAME); }
/** * Account: yes, group: no */ private void assertJackAccountNoSwashbuckler() throws SchemaViolationException, ConflictException, ConnectException, FileNotFoundException, InterruptedException { assertDefaultDummyAccount(ACCOUNT_JACK_DUMMY_USERNAME, ACCOUNT_JACK_DUMMY_FULLNAME, true); DummyGroup dummyGroup = getDummyResource().getGroupByName(GROUP_DUMMY_SWASHBUCKLERS_NAME); assertNotNull("No group on dummy resource", dummyGroup); display("Group", dummyGroup); assertEquals("Wrong group description", GROUP_DUMMY_SWASHBUCKLERS_DESCRIPTION, dummyGroup.getAttributeValue(DummyResourceContoller.DUMMY_GROUP_ATTRIBUTE_DESCRIPTION)); assertNoGroupMember(dummyGroup, ACCOUNT_JACK_DUMMY_USERNAME); }
@Test public void test304AddRoleThug() throws Exception { final String TEST_NAME = "test304AddRoleThug"; displayTestTitle(TEST_NAME); Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); // WHEN displayWhen(TEST_NAME); addObject(ROLE_THUG_FILE, task, result); // THEN displayThen(TEST_NAME); result.computeStatus(); TestUtil.assertSuccess(result); DummyGroup dummyGroupThug = getDummyResource(RESOURCE_DUMMY_ORANGE_NAME).getGroupByName(GROUP_THUG_NAME); assertNotNull("No group on orange dummy resource", dummyGroupThug); display("Group", dummyGroupThug); assertNoGroupMembers(dummyGroupThug); DummyGroup dummyGroupThugWannabe = getDummyResource(RESOURCE_DUMMY_ORANGE_NAME).getGroupByName(GROUP_THUG_NAME + "-wannabe"); assertNotNull("No wannabe group on orange dummy resource", dummyGroupThugWannabe); display("Wannabe Group", dummyGroupThugWannabe); assertNoGroupMembers(dummyGroupThugWannabe); }
@Test public void test302AddRoleBrute() throws Exception { final String TEST_NAME = "test302AddRoleBrute"; displayTestTitle(TEST_NAME); Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); // WHEN displayWhen(TEST_NAME); addObject(ROLE_BRUTE_FILE, task, result); // THEN displayThen(TEST_NAME); result.computeStatus(); TestUtil.assertSuccess(result); DummyGroup dummyGroupBrute = getDummyResource(RESOURCE_DUMMY_ORANGE_NAME).getGroupByName(GROUP_BRUTE_NAME); assertNotNull("No group on orange dummy resource", dummyGroupBrute); display("Group", dummyGroupBrute); assertNoGroupMembers(dummyGroupBrute); DummyGroup dummyGroupBruteWannabe = getDummyResource(RESOURCE_DUMMY_ORANGE_NAME).getGroupByName(GROUP_BRUTE_NAME + "-wannabe"); assertNotNull("No wannabe group on orange dummy resource", dummyGroupBruteWannabe); display("Wannabe Group", dummyGroupBruteWannabe); assertNoGroupMembers(dummyGroupBruteWannabe); }
@Test public void test403removeAllAssignments() throws Exception { final String TEST_NAME = "test403removeAllAssignments"; displayTestTitle(TEST_NAME); DummyGroup testersGroup = getDummyResource(RESOURCE_DUMMY_AUTOGREEN_NAME).getGroupByName(GROUP_DUMMY_TESTERS_NAME); testersGroup.removeMember(USER_HERMAN_USERNAME); DummyAccount hermanAccount = getDummyAccount(RESOURCE_DUMMY_AUTOGREEN_NAME, USER_HERMAN_USERNAME); hermanAccount.removeAttributeValues(DummyResourceContoller.DUMMY_ACCOUNT_ATTRIBUTE_TITLE_NAME, Arrays.asList("graphic", "cratic")); // GIVEN Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); // WHEN displayWhen(TEST_NAME); unassignRole(userHermanOid, ROLE_ADMINS_OID); // THEN displayThen(TEST_NAME); assertSuccess(result); PrismObject<UserType> userAfter = getUser(userHermanOid); display("User after", userAfter); assertAssignedRole(userAfter, ROLE_AUTOCRATIC_OID); assertAssignments(userAfter, 1); }
@Test public void test224UnassignRoleMapmakerFromWally() throws Exception { final String TEST_NAME = "test224UnassignRoleMapmakerFromWally"; displayTestTitle(TEST_NAME); Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); PrismObject<UserType> user = findUserByUsername(USER_WALLY_NAME); // WHEN displayWhen(TEST_NAME); unassignRole(user.getOid(), ROLE_MAPMAKER_OID, task, result); // THEN displayThen(TEST_NAME); assertSuccess(result); DummyGroup dummyGroup = getDummyResource().getGroupByName(GROUP_DUMMY_MAPMAKERS_NAME); assertNotNull("No group on dummy resource", dummyGroup); display("Group", dummyGroup); assertNoGroupMember(dummyGroup, USER_WALLY_NAME); }
@Test public void test314AssignRoleThugToLargo() throws Exception { final String TEST_NAME = "test314AssignRoleThugToLargo"; displayTestTitle(TEST_NAME); Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); // WHEN displayWhen(TEST_NAME); assignRole(USER_LARGO_OID, ROLE_THUG_OID, task, result); // THEN displayThen(TEST_NAME); result.computeStatus(); TestUtil.assertSuccess(result); assertGroupMember(GROUP_THUG_NAME, USER_LARGO_USERNAME, getDummyResource(RESOURCE_DUMMY_ORANGE_NAME)); DummyGroup dummyGroupThugWannabe = getDummyResource(RESOURCE_DUMMY_ORANGE_NAME).getGroupByName(GROUP_THUG_NAME + "-wannabe"); assertNotNull("No wannabe group on orange dummy resource", dummyGroupThugWannabe); display("Wannabe Group", dummyGroupThugWannabe); assertGroupMember(dummyGroupThugWannabe, USER_LARGO_USERNAME); }
@Test public void test312AssignRoleBruteToLargo() throws Exception { final String TEST_NAME = "test312AssignRoleBruteToLargo"; displayTestTitle(TEST_NAME); Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); // WHEN displayWhen(TEST_NAME); assignRole(USER_LARGO_OID, ROLE_BRUTE_OID, task, result); // THEN displayThen(TEST_NAME); result.computeStatus(); TestUtil.assertSuccess(result); assertGroupMember(GROUP_BRUTE_NAME, USER_LARGO_USERNAME, getDummyResource(RESOURCE_DUMMY_ORANGE_NAME)); DummyGroup dummyGroupBruteWannabe = getDummyResource(RESOURCE_DUMMY_ORANGE_NAME).getGroupByName(GROUP_BRUTE_NAME + "-wannabe"); assertNotNull("No wannabe group on orange dummy resource", dummyGroupBruteWannabe); display("Wannabe Group", dummyGroupBruteWannabe); assertGroupMember(dummyGroupBruteWannabe, USER_LARGO_USERNAME); }
@Test public void test310AssignRoleWimpToLargo() throws Exception { final String TEST_NAME = "test310AssignRoleWimpToLargo"; displayTestTitle(TEST_NAME); Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); addObject(USER_LARGO_FILE); // WHEN displayWhen(TEST_NAME); assignRole(USER_LARGO_OID, ROLE_WIMP_OID, task, result); // THEN displayThen(TEST_NAME); result.computeStatus(); TestUtil.assertSuccess(result); assertGroupMember(GROUP_DUMMY_WIMPS_NAME, USER_LARGO_USERNAME, getDummyResource()); DummyGroup dummyGroupWimpAtOrange = getDummyResource(RESOURCE_DUMMY_ORANGE_NAME).getGroupByName(GROUP_DUMMY_WIMPS_NAME); assertNotNull("No group on orange dummy resource", dummyGroupWimpAtOrange); display("Group @orange", dummyGroupWimpAtOrange); assertGroupMember(dummyGroupWimpAtOrange, USER_LARGO_USERNAME); }
/** * Guybrush has swashbuckler role. But its group membership is lost somewhere. * Reconcile should fix that because swashbuckler group mapping is strong. * MID-4792 */ @Test public void test781GuybrushTheLostSwashbuckler() throws Exception { final String TEST_NAME = "test781GuybrushTheLostSwashbuckler"; displayTestTitle(TEST_NAME); Task task = createTask(TEST_NAME); OperationResult result = task.getResult(); DummyGroup dummyGroup = getDummyResource().getGroupByName(GROUP_DUMMY_SWASHBUCKLERS_NAME); dummyGroup.removeMember(USER_GUYBRUSH_USERNAME); assertNoGroupMember(getDummyGroup(null, GROUP_DUMMY_SWASHBUCKLERS_NAME), USER_GUYBRUSH_USERNAME); // WHEN displayWhen(TEST_NAME); reconcileUser(USER_GUYBRUSH_OID, task, result); // THEN displayThen(TEST_NAME); dumpUserAndAccounts(getUser(USER_GUYBRUSH_OID), task, result); assertGroupMember(getDummyGroup(null, GROUP_DUMMY_SWASHBUCKLERS_NAME), USER_GUYBRUSH_USERNAME); assertSteadyResources(); }