Search in sources :

Example 86 with Entry

use of org.opends.server.types.Entry in project midpoint by Evolveum.

the class TestOpenDj method test322ModifyAccountPosix.

@Test
public void test322ModifyAccountPosix() throws Exception {
    final String TEST_NAME = "test322ModifyAccountPosix";
    TestUtil.displayTestTile(TEST_NAME);
    Task task = createTask(TEST_NAME);
    OperationResult result = task.getResult();
    ObjectModificationType objectChange = PrismTestUtil.parseAtomicValue(ACCOUNT_POSIX_MCMUTTON_CHANGE_FILE, ObjectModificationType.COMPLEX_TYPE);
    ObjectDelta<ShadowType> delta = DeltaConvertor.createObjectDelta(objectChange, getShadowDefinition());
    display("Object change", delta);
    // WHEN
    TestUtil.displayWhen(TEST_NAME);
    provisioningService.modifyObject(ShadowType.class, objectChange.getOid(), delta.getModifications(), null, null, taskManager.createTaskInstance(), result);
    // THEN
    TestUtil.displayThen(TEST_NAME);
    result.computeStatus();
    TestUtil.assertSuccess(result);
    ShadowType accountType = provisioningService.getObject(ShadowType.class, ACCOUNT_POSIX_MCMUTTON_OID, null, task, result).asObjectable();
    display("Object after change", accountType);
    String uid = ShadowUtil.getSingleStringAttributeValue(accountType, getPrimaryIdentifierQName());
    assertNotNull(uid);
    assertAttribute(accountType, "cn", "Haggis McMutton");
    assertAttribute(accountType, "homeDirectory", "/home/caribbean");
    assertAttribute(accountType, "roomNumber", "Barber Shop");
    assertAttribute(accountType, "uidNumber", 1001);
    // Check if object was modified in LDAP
    Entry entry = openDJController.searchAndAssertByEntryUuid(uid);
    display("LDAP account", entry);
    OpenDJController.assertAttribute(entry, "cn", "Haggis McMutton");
    OpenDJController.assertAttribute(entry, "homeDirectory", "/home/caribbean");
    OpenDJController.assertAttribute(entry, "roomNumber", "Barber Shop");
    OpenDJController.assertAttribute(entry, "uidNumber", "1001");
    assertShadows(17);
}
Also used : ObjectModificationType(com.evolveum.midpoint.xml.ns._public.common.api_types_3.ObjectModificationType) Task(com.evolveum.midpoint.task.api.Task) Entry(org.opends.server.types.Entry) ShadowType(com.evolveum.midpoint.xml.ns._public.common.common_3.ShadowType) OperationResult(com.evolveum.midpoint.schema.result.OperationResult) Test(org.testng.annotations.Test)

Example 87 with Entry

use of org.opends.server.types.Entry in project midpoint by Evolveum.

the class TestOpenDj method test400AddGroupSwashbucklers.

// TODO: synchronization of auxiliary object classes
@Test
public void test400AddGroupSwashbucklers() throws Exception {
    final String TEST_NAME = "test400AddGroupSwashbucklers";
    TestUtil.displayTestTile(TEST_NAME);
    Task task = createTask(TEST_NAME);
    OperationResult result = task.getResult();
    ShadowType object = parseObjectType(GROUP_SWASHBUCKLERS_FILE, ShadowType.class);
    IntegrationTestTools.display("Adding object", object);
    // WHEN
    TestUtil.displayWhen(TEST_NAME);
    String addedObjectOid = provisioningService.addObject(object.asPrismObject(), null, null, task, result);
    // THEN
    TestUtil.displayThen(TEST_NAME);
    assertEquals(GROUP_SWASHBUCKLERS_OID, addedObjectOid);
    ShadowType shadowType = repositoryService.getObject(ShadowType.class, GROUP_SWASHBUCKLERS_OID, null, result).asObjectable();
    PrismAsserts.assertEqualsPolyString("Wrong ICF name (repo)", GROUP_SWASHBUCKLERS_DN, shadowType.getName());
    PrismObject<ShadowType> provisioningShadow = provisioningService.getObject(ShadowType.class, GROUP_SWASHBUCKLERS_OID, null, taskManager.createTaskInstance(), result);
    ShadowType provisioningShadowType = provisioningShadow.asObjectable();
    assertEquals("Wrong ICF name (provisioning)", dnMatchingRule.normalize(GROUP_SWASHBUCKLERS_DN), dnMatchingRule.normalize(provisioningShadowType.getName().getOrig()));
    String uid = ShadowUtil.getSingleStringAttributeValue(shadowType, getPrimaryIdentifierQName());
    assertNotNull(uid);
    ResourceAttribute<Object> memberAttr = ShadowUtil.getAttribute(provisioningShadow, new QName(RESOURCE_OPENDJ_NS, GROUP_MEMBER_ATTR_NAME));
    assertNull("Member attribute sneaked in", memberAttr);
    Entry ldapEntry = openDJController.searchAndAssertByEntryUuid(uid);
    display("LDAP group", ldapEntry);
    assertNotNull("No LDAP group entry");
    String groupDn = ldapEntry.getDN().toString();
    assertEquals("Wrong group DN", dnMatchingRule.normalize(GROUP_SWASHBUCKLERS_DN), dnMatchingRule.normalize(groupDn));
    assertShadows(18);
}
Also used : Task(com.evolveum.midpoint.task.api.Task) Entry(org.opends.server.types.Entry) ShadowType(com.evolveum.midpoint.xml.ns._public.common.common_3.ShadowType) QName(javax.xml.namespace.QName) OperationResult(com.evolveum.midpoint.schema.result.OperationResult) PrismObject(com.evolveum.midpoint.prism.PrismObject) Test(org.testng.annotations.Test)

Aggregations

Entry (org.opends.server.types.Entry)87 OperationResult (com.evolveum.midpoint.schema.result.OperationResult)45 Test (org.testng.annotations.Test)44 Task (com.evolveum.midpoint.task.api.Task)43 ShadowType (com.evolveum.midpoint.xml.ns._public.common.common_3.ShadowType)40 PolyString (com.evolveum.midpoint.prism.polystring.PolyString)29 UserType (com.evolveum.midpoint.xml.ns._public.common.common_3.UserType)14 QName (javax.xml.namespace.QName)11 SearchResultEntry (org.opends.server.types.SearchResultEntry)11 LDIFImportConfig (org.opends.server.types.LDIFImportConfig)10 LDIFReader (org.opends.server.util.LDIFReader)10 AbstractModelIntegrationTest (com.evolveum.midpoint.model.test.AbstractModelIntegrationTest)9 OrgType (com.evolveum.midpoint.xml.ns._public.common.common_3.OrgType)8 PrismObject (com.evolveum.midpoint.prism.PrismObject)6 JarEntry (java.util.jar.JarEntry)6 ChangeRecordEntry (org.opends.server.util.ChangeRecordEntry)6 ModifyChangeRecordEntry (org.opends.server.util.ModifyChangeRecordEntry)6 ModifyDNChangeRecordEntry (org.opends.server.util.ModifyDNChangeRecordEntry)6 ItemPath (com.evolveum.midpoint.prism.path.ItemPath)5 PrismReferenceValue (com.evolveum.midpoint.prism.PrismReferenceValue)4