Search in sources :

Example 71 with ObjectNotFoundException

use of com.evolveum.midpoint.util.exception.ObjectNotFoundException in project midpoint by Evolveum.

the class AbstractModelIntegrationTest method assertAllowRequestItems.

protected void assertAllowRequestItems(String userOid, String targetRoleOid, AuthorizationDecisionType expectedDefaultDecision, QName... expectedAllowedItemQNames) throws SchemaException, SecurityViolationException, CommunicationException, ObjectNotFoundException, ConfigurationException, ExpressionEvaluationException {
    PrismObject<UserType> user = getUser(userOid);
    PrismObject<RoleType> target = getRole(targetRoleOid);
    ItemSecurityDecisions decisions = modelInteractionService.getAllowedRequestAssignmentItems(user, target);
    display("Request decisions for " + target, decisions);
    assertEquals("Wrong assign default decision", expectedDefaultDecision, decisions.getDefaultDecision());
    assertEquals("Unexpected number of allowed items", expectedAllowedItemQNames.length, decisions.getItemDecisionMap().size());
    decisions.getItemDecisionMap().forEach((path, decision) -> {
        assertEquals("wrong item " + path + " decision", AuthorizationDecisionType.ALLOW, decision);
        QName lastPathName = path.lastNamed().getName();
        if (!Arrays.stream(expectedAllowedItemQNames).anyMatch(qname -> QNameUtil.match(qname, lastPathName))) {
            AssertJUnit.fail("Unexpected path " + path);
        }
    });
}
Also used : StringUtils(org.apache.commons.lang.StringUtils) AuditReferenceValue(com.evolveum.midpoint.audit.api.AuditReferenceValue) Autowired(org.springframework.beans.factory.annotation.Autowired) SchemaException(com.evolveum.midpoint.util.exception.SchemaException) Entry(org.opends.server.types.Entry) Map(java.util.Map) UserProfileService(com.evolveum.midpoint.security.api.UserProfileService) SecurityContextHolder(org.springframework.security.core.context.SecurityContextHolder) ObjectQueryUtil(com.evolveum.midpoint.schema.util.ObjectQueryUtil) AssignmentType(com.evolveum.midpoint.xml.ns._public.common.common_3.AssignmentType) ObjectDelta(com.evolveum.midpoint.prism.delta.ObjectDelta) PrismProperty(com.evolveum.midpoint.prism.PrismProperty) ObjectAlreadyExistsException(com.evolveum.midpoint.util.exception.ObjectAlreadyExistsException) RepositoryDiag(com.evolveum.midpoint.schema.RepositoryDiag) ShadowKindType(com.evolveum.midpoint.xml.ns._public.common.common_3.ShadowKindType) ModelService(com.evolveum.midpoint.model.api.ModelService) PolyStringType(com.evolveum.prism.xml.ns._public.types_3.PolyStringType) FilterInvocation(org.springframework.security.web.FilterInvocation) SystemObjectCache(com.evolveum.midpoint.model.common.SystemObjectCache) PropertyDelta(com.evolveum.midpoint.prism.delta.PropertyDelta) CommunicationException(com.evolveum.midpoint.util.exception.CommunicationException) UsernamePasswordAuthenticationToken(org.springframework.security.authentication.UsernamePasswordAuthenticationToken) Clock(com.evolveum.midpoint.common.Clock) FocusTypeUtil(com.evolveum.midpoint.schema.util.FocusTypeUtil) PolicyViolationException(com.evolveum.midpoint.util.exception.PolicyViolationException) ResourceAttributeContainer(com.evolveum.midpoint.schema.processor.ResourceAttributeContainer) ItemDefinition(com.evolveum.midpoint.prism.ItemDefinition) PrismObjectDefinition(com.evolveum.midpoint.prism.PrismObjectDefinition) ItemDelta(com.evolveum.midpoint.prism.delta.ItemDelta) SecurityViolationException(com.evolveum.midpoint.util.exception.SecurityViolationException) HookRegistry(com.evolveum.midpoint.model.api.hooks.HookRegistry) TestUtil(com.evolveum.midpoint.test.util.TestUtil) ConnectException(java.net.ConnectException) PrismContainerDefinition(com.evolveum.midpoint.prism.PrismContainerDefinition) AuthorizationType(com.evolveum.midpoint.xml.ns._public.common.common_3.AuthorizationType) AbstractRoleType(com.evolveum.midpoint.xml.ns._public.common.common_3.AbstractRoleType) AfterClass(org.testng.annotations.AfterClass) PrismPropertyDefinition(com.evolveum.midpoint.prism.PrismPropertyDefinition) SecurityContextImpl(org.springframework.security.core.context.SecurityContextImpl) IOException(java.io.IOException) RefinedObjectClassDefinition(com.evolveum.midpoint.common.refinery.RefinedObjectClassDefinition) ModelElementContext(com.evolveum.midpoint.model.api.context.ModelElementContext) MidPointPrincipal(com.evolveum.midpoint.security.api.MidPointPrincipal) SearchResultList(com.evolveum.midpoint.schema.SearchResultList) SystemObjectsType(com.evolveum.midpoint.xml.ns._public.common.common_3.SystemObjectsType) ObjectTypes(com.evolveum.midpoint.schema.constants.ObjectTypes) ObjectQuery(com.evolveum.midpoint.prism.query.ObjectQuery) ObjectDeltaOperation(com.evolveum.midpoint.schema.ObjectDeltaOperation) PrismValue(com.evolveum.midpoint.prism.PrismValue) NotificationManager(com.evolveum.midpoint.notifications.api.NotificationManager) ObjectType(com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectType) Date(java.util.Date) AuthorizationConstants(com.evolveum.midpoint.security.api.AuthorizationConstants) ConstructionType(com.evolveum.midpoint.xml.ns._public.common.common_3.ConstructionType) DisplayableValue(com.evolveum.midpoint.util.DisplayableValue) RoleType(com.evolveum.midpoint.xml.ns._public.common.common_3.RoleType) ResourceAttribute(com.evolveum.midpoint.schema.processor.ResourceAttribute) SystemConfigurationType(com.evolveum.midpoint.xml.ns._public.common.common_3.SystemConfigurationType) ConflictException(com.evolveum.icf.dummy.resource.ConflictException) DummyAccount(com.evolveum.icf.dummy.resource.DummyAccount) SelectorOptions(com.evolveum.midpoint.schema.SelectorOptions) PrismAsserts(com.evolveum.midpoint.prism.util.PrismAsserts) ObjectNotFoundException(com.evolveum.midpoint.util.exception.ObjectNotFoundException) Collection(java.util.Collection) AssignmentSelectorType(com.evolveum.midpoint.xml.ns._public.common.common_3.AssignmentSelectorType) MiscUtil(com.evolveum.midpoint.util.MiscUtil) Collectors(java.util.stream.Collectors) JAXBException(javax.xml.bind.JAXBException) MetadataType(com.evolveum.midpoint.xml.ns._public.common.common_3.MetadataType) SecurityContext(org.springframework.security.core.context.SecurityContext) NameItemPathSegment(com.evolveum.midpoint.prism.path.NameItemPathSegment) ObjectSynchronizationType(com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectSynchronizationType) FocusType(com.evolveum.midpoint.xml.ns._public.common.common_3.FocusType) ProvisioningService(com.evolveum.midpoint.provisioning.api.ProvisioningService) SecurityConfig(org.springframework.security.access.SecurityConfig) AnonymousAuthenticationToken(org.springframework.security.authentication.AnonymousAuthenticationToken) Checker(com.evolveum.midpoint.test.Checker) ObjectReferenceType(com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectReferenceType) AssertJUnit(org.testng.AssertJUnit) AbstractIntegrationTest(com.evolveum.midpoint.test.AbstractIntegrationTest) AdminGuiConfigurationType(com.evolveum.midpoint.xml.ns._public.common.common_3.AdminGuiConfigurationType) OrgType(com.evolveum.midpoint.xml.ns._public.common.common_3.OrgType) PasswordType(com.evolveum.midpoint.xml.ns._public.common.common_3.PasswordType) PrismContainer(com.evolveum.midpoint.prism.PrismContainer) SchemaTestConstants(com.evolveum.midpoint.schema.util.SchemaTestConstants) DummyAuditService(com.evolveum.midpoint.test.DummyAuditService) OrgFilter(com.evolveum.midpoint.prism.query.OrgFilter) DebugUtil(com.evolveum.midpoint.util.DebugUtil) DummyResourceContoller(com.evolveum.midpoint.test.DummyResourceContoller) ExpressionEvaluationException(com.evolveum.midpoint.util.exception.ExpressionEvaluationException) HashSet(java.util.HashSet) ModelContext(com.evolveum.midpoint.model.api.context.ModelContext) ObjectTypeUtil(com.evolveum.midpoint.schema.util.ObjectTypeUtil) IntegrationTestTools(com.evolveum.midpoint.test.IntegrationTestTools) ModelExecuteOptions(com.evolveum.midpoint.model.api.ModelExecuteOptions) RefinedAttributeDefinition(com.evolveum.midpoint.common.refinery.RefinedAttributeDefinition) AuthorizationPhaseType(com.evolveum.midpoint.xml.ns._public.common.common_3.AuthorizationPhaseType) FileInputStream(java.io.FileInputStream) IdItemPathSegment(com.evolveum.midpoint.prism.path.IdItemPathSegment) TunnelException(com.evolveum.midpoint.util.exception.TunnelException) ItemPath(com.evolveum.midpoint.prism.path.ItemPath) Consumer(java.util.function.Consumer) ItemSecurityDecisions(com.evolveum.midpoint.security.api.ItemSecurityDecisions) MatchingRule(com.evolveum.midpoint.prism.match.MatchingRule) PrismReference(com.evolveum.midpoint.prism.PrismReference) ReferenceDelta(com.evolveum.midpoint.prism.delta.ReferenceDelta) Arrays(java.util.Arrays) ChangeType(com.evolveum.midpoint.prism.delta.ChangeType) AssertJUnit.assertTrue(org.testng.AssertJUnit.assertTrue) PrismTestUtil(com.evolveum.midpoint.prism.util.PrismTestUtil) AssertJUnit.assertNull(org.testng.AssertJUnit.assertNull) MidpointFunctions(com.evolveum.midpoint.model.api.expr.MidpointFunctions) CredentialsType(com.evolveum.midpoint.xml.ns._public.common.common_3.CredentialsType) ModelProjectionContext(com.evolveum.midpoint.model.api.context.ModelProjectionContext) DummyGroup(com.evolveum.icf.dummy.resource.DummyGroup) ResultHandler(com.evolveum.midpoint.schema.ResultHandler) Holder(com.evolveum.midpoint.util.Holder) Set(java.util.Set) Task(com.evolveum.midpoint.task.api.Task) TriggerType(com.evolveum.midpoint.xml.ns._public.common.common_3.TriggerType) SystemException(com.evolveum.midpoint.util.exception.SystemException) QName(javax.xml.namespace.QName) ObjectPolicyConfigurationType(com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectPolicyConfigurationType) ProtectedStringType(com.evolveum.prism.xml.ns._public.types_3.ProtectedStringType) PrismReferenceValue(com.evolveum.midpoint.prism.PrismReferenceValue) Authorization(com.evolveum.midpoint.security.api.Authorization) SchemaViolationException(com.evolveum.icf.dummy.resource.SchemaViolationException) Trace(com.evolveum.midpoint.util.logging.Trace) AuditEventStage(com.evolveum.midpoint.audit.api.AuditEventStage) ArrayList(java.util.ArrayList) RefinedResourceSchema(com.evolveum.midpoint.common.refinery.RefinedResourceSchema) RefinedResourceSchemaImpl(com.evolveum.midpoint.common.refinery.RefinedResourceSchemaImpl) PrismContext(com.evolveum.midpoint.prism.PrismContext) SynchronizationType(com.evolveum.midpoint.xml.ns._public.common.common_3.SynchronizationType) ContainerDelta(com.evolveum.midpoint.prism.delta.ContainerDelta) AssertJUnit.assertFalse(org.testng.AssertJUnit.assertFalse) PrismObject(com.evolveum.midpoint.prism.PrismObject) XMLGregorianCalendar(javax.xml.datatype.XMLGregorianCalendar) File(java.io.File) ModelDiagnosticService(com.evolveum.midpoint.model.api.ModelDiagnosticService) CommonException(com.evolveum.midpoint.util.exception.CommonException) AuditEventType(com.evolveum.midpoint.audit.api.AuditEventType) PrismContainerValue(com.evolveum.midpoint.prism.PrismContainerValue) ShadowUtil(com.evolveum.midpoint.schema.util.ShadowUtil) ResourceType(com.evolveum.midpoint.xml.ns._public.common.common_3.ResourceType) MidPointAsserts(com.evolveum.midpoint.test.util.MidPointAsserts) AssertJUnit.assertNotNull(org.testng.AssertJUnit.assertNotNull) AssertJUnit.assertEquals(org.testng.AssertJUnit.assertEquals) ModelAuditService(com.evolveum.midpoint.model.api.ModelAuditService) ActivationType(com.evolveum.midpoint.xml.ns._public.common.common_3.ActivationType) AuthorityUtils(org.springframework.security.core.authority.AuthorityUtils) TraceManager(com.evolveum.midpoint.util.logging.TraceManager) ResourceAttributeDefinition(com.evolveum.midpoint.schema.processor.ResourceAttributeDefinition) ConfigurationException(com.evolveum.midpoint.util.exception.ConfigurationException) TaskExecutionStatusType(com.evolveum.midpoint.xml.ns._public.common.common_3.TaskExecutionStatusType) InternalsConfig(com.evolveum.midpoint.schema.internals.InternalsConfig) QNameUtil(com.evolveum.midpoint.util.QNameUtil) MiscSchemaUtil(com.evolveum.midpoint.schema.util.MiscSchemaUtil) DirectoryException(org.opends.server.types.DirectoryException) AuditEventRecord(com.evolveum.midpoint.audit.api.AuditEventRecord) ConfigAttribute(org.springframework.security.access.ConfigAttribute) XmlTypeConverter(com.evolveum.midpoint.prism.xml.XmlTypeConverter) ModelInteractionService(com.evolveum.midpoint.model.api.ModelInteractionService) ResourceTypeUtil(com.evolveum.midpoint.schema.util.ResourceTypeUtil) FileNotFoundException(java.io.FileNotFoundException) TaskType(com.evolveum.midpoint.xml.ns._public.common.common_3.TaskType) List(java.util.List) Optional(java.util.Optional) Authentication(org.springframework.security.core.Authentication) ShadowType(com.evolveum.midpoint.xml.ns._public.common.common_3.ShadowType) Item(com.evolveum.midpoint.prism.Item) SchemaConstants(com.evolveum.midpoint.schema.constants.SchemaConstants) OperationResult(com.evolveum.midpoint.schema.result.OperationResult) SecurityEnforcer(com.evolveum.midpoint.security.api.SecurityEnforcer) HashMap(java.util.HashMap) EncryptionException(com.evolveum.midpoint.prism.crypto.EncryptionException) RoleSelectionSpecification(com.evolveum.midpoint.model.api.RoleSelectionSpecification) ModelPortType(com.evolveum.midpoint.xml.ns._public.model.model_3.ModelPortType) AuthorizationDecisionType(com.evolveum.midpoint.xml.ns._public.common.common_3.AuthorizationDecisionType) RepositoryService(com.evolveum.midpoint.repo.api.RepositoryService) Containerable(com.evolveum.midpoint.prism.Containerable) PolyString(com.evolveum.midpoint.prism.polystring.PolyString) ActivationStatusType(com.evolveum.midpoint.xml.ns._public.common.common_3.ActivationStatusType) DeltaBuilder(com.evolveum.midpoint.prism.delta.builder.DeltaBuilder) DummyResource(com.evolveum.icf.dummy.resource.DummyResource) TaskExecutionStatus(com.evolveum.midpoint.task.api.TaskExecutionStatus) IntegrationTestTools.display(com.evolveum.midpoint.test.IntegrationTestTools.display) Message(com.evolveum.midpoint.notifications.api.transports.Message) QueryBuilder(com.evolveum.midpoint.prism.query.builder.QueryBuilder) FailableProcessor(com.evolveum.midpoint.util.FailableProcessor) SynchronizationSituationType(com.evolveum.midpoint.xml.ns._public.common.common_3.SynchronizationSituationType) GetOperationOptions(com.evolveum.midpoint.schema.GetOperationOptions) UserType(com.evolveum.midpoint.xml.ns._public.common.common_3.UserType) Collections(java.util.Collections) AbstractRoleType(com.evolveum.midpoint.xml.ns._public.common.common_3.AbstractRoleType) RoleType(com.evolveum.midpoint.xml.ns._public.common.common_3.RoleType) QName(javax.xml.namespace.QName) ItemSecurityDecisions(com.evolveum.midpoint.security.api.ItemSecurityDecisions) UserType(com.evolveum.midpoint.xml.ns._public.common.common_3.UserType)

Example 72 with ObjectNotFoundException

use of com.evolveum.midpoint.util.exception.ObjectNotFoundException in project midpoint by Evolveum.

the class AbstractModelIntegrationTest method waitForTaskCloseOrSuspend.

protected void waitForTaskCloseOrSuspend(final String taskOid, final int timeout, long sleepTime) throws Exception {
    final OperationResult waitResult = new OperationResult(AbstractIntegrationTest.class + ".waitForTaskCloseOrSuspend");
    Checker checker = new Checker() {

        @Override
        public boolean check() throws CommonException {
            Task task = taskManager.getTask(taskOid, waitResult);
            waitResult.summarize();
            display("Task execution status = " + task.getExecutionStatus());
            return task.getExecutionStatus() == TaskExecutionStatus.CLOSED || task.getExecutionStatus() == TaskExecutionStatus.SUSPENDED;
        }

        @Override
        public void timeout() {
            Task task = null;
            try {
                task = taskManager.getTask(taskOid, waitResult);
            } catch (ObjectNotFoundException | SchemaException e) {
                LOGGER.error("Exception during task refresh: {}", e, e);
            }
            OperationResult result = null;
            if (task != null) {
                result = task.getResult();
                LOGGER.debug("Result of timed-out task:\n{}", result.debugDump());
            }
            assert false : "Timeout (" + timeout + ") while waiting for " + taskOid + " to close or suspend. Last result " + result;
        }
    };
    IntegrationTestTools.waitFor("Waiting for " + taskOid + " close/suspend", checker, timeout, sleepTime);
}
Also used : AbstractIntegrationTest(com.evolveum.midpoint.test.AbstractIntegrationTest) SchemaException(com.evolveum.midpoint.util.exception.SchemaException) Checker(com.evolveum.midpoint.test.Checker) Task(com.evolveum.midpoint.task.api.Task) ObjectNotFoundException(com.evolveum.midpoint.util.exception.ObjectNotFoundException) OperationResult(com.evolveum.midpoint.schema.result.OperationResult)

Example 73 with ObjectNotFoundException

use of com.evolveum.midpoint.util.exception.ObjectNotFoundException in project midpoint by Evolveum.

the class TestDummy method testLiveSyncDeleteCorsairs.

public void testLiveSyncDeleteCorsairs(final String TEST_NAME, DummySyncStyle syncStyle, QName objectClass, boolean expectReaction) throws Exception {
    TestUtil.displayTestTile(TEST_NAME);
    // GIVEN
    OperationResult result = new OperationResult(TestDummy.class.getName() + "." + TEST_NAME);
    syncServiceMock.reset();
    dummyResource.setSyncStyle(syncStyle);
    if (isNameUnique()) {
        dummyResource.deleteGroupByName(GROUP_CORSAIRS_NAME);
    } else {
        dummyResource.deleteGroupById(corsairsIcfUid);
    }
    display("Resource before sync", dummyResource.debugDump());
    ResourceShadowDiscriminator coords = new ResourceShadowDiscriminator(RESOURCE_DUMMY_OID, objectClass);
    // WHEN
    TestUtil.displayWhen(TEST_NAME);
    provisioningService.synchronize(coords, syncTokenTask, result);
    // THEN
    TestUtil.displayThen(TEST_NAME);
    result.computeStatus();
    display("Synchronization result", result);
    TestUtil.assertSuccess("Synchronization result is not OK", result);
    if (expectReaction) {
        syncServiceMock.assertNotifyChange();
        ResourceObjectShadowChangeDescription lastChange = syncServiceMock.getLastChange();
        display("The change", lastChange);
        PrismObject<? extends ShadowType> oldShadow = lastChange.getOldShadow();
        assertNotNull("Old shadow missing", oldShadow);
        assertNotNull("Old shadow does not have an OID", oldShadow.getOid());
        PrismAsserts.assertClass("old shadow", ShadowType.class, oldShadow);
        ShadowType oldShadowType = oldShadow.asObjectable();
        ResourceAttributeContainer attributesContainer = ShadowUtil.getAttributesContainer(oldShadowType);
        assertNotNull("No attributes container in old shadow", attributesContainer);
        Collection<ResourceAttribute<?>> attributes = attributesContainer.getAttributes();
        assertFalse("Attributes container is empty", attributes.isEmpty());
        assertEquals("Unexpected number of attributes", 2, attributes.size());
        ResourceAttribute<?> icfsNameAttribute = attributesContainer.findAttribute(SchemaConstants.ICFS_NAME);
        assertNotNull("No ICF name attribute in old  shadow", icfsNameAttribute);
        assertEquals("Wrong value of ICF name attribute in old  shadow", GROUP_CORSAIRS_NAME, icfsNameAttribute.getRealValue());
        ObjectDelta<? extends ShadowType> objectDelta = lastChange.getObjectDelta();
        assertNotNull("Delta missing", objectDelta);
        assertEquals("Wrong delta changetype", ChangeType.DELETE, objectDelta.getChangeType());
        PrismAsserts.assertClass("delta", ShadowType.class, objectDelta);
        assertNotNull("No OID in delta", objectDelta.getOid());
        assertNull("Unexpected current shadow", lastChange.getCurrentShadow());
        try {
            // The shadow should be gone
            PrismObject<ShadowType> repoShadow = repositoryService.getObject(ShadowType.class, corsairsShadowOid, null, result);
            AssertJUnit.fail("The shadow " + repoShadow + " is not gone from repo");
        } catch (ObjectNotFoundException e) {
        // This is expected
        }
    } else {
        syncServiceMock.assertNoNotifyChange();
    }
    checkAllShadows();
    assertSteadyResource();
}
Also used : ShadowType(com.evolveum.midpoint.xml.ns._public.common.common_3.ShadowType) OperationResult(com.evolveum.midpoint.schema.result.OperationResult) ResourceAttributeContainer(com.evolveum.midpoint.schema.processor.ResourceAttributeContainer) ResourceObjectShadowChangeDescription(com.evolveum.midpoint.provisioning.api.ResourceObjectShadowChangeDescription) ObjectNotFoundException(com.evolveum.midpoint.util.exception.ObjectNotFoundException) ResourceShadowDiscriminator(com.evolveum.midpoint.schema.ResourceShadowDiscriminator) ResourceAttribute(com.evolveum.midpoint.schema.processor.ResourceAttribute)

Example 74 with ObjectNotFoundException

use of com.evolveum.midpoint.util.exception.ObjectNotFoundException in project midpoint by Evolveum.

the class TestDummy method test265DeleteAccountLeChuck.

/**
	 * LeChuck has both group and priv entitlement. If deleted it should be correctly removed from all
	 * the entitlements.
	 */
@Test
public void test265DeleteAccountLeChuck() throws Exception {
    final String TEST_NAME = "test265DeleteAccountLeChuck";
    TestUtil.displayTestTile(TEST_NAME);
    // GIVEN
    Task task = createTask(TEST_NAME);
    OperationResult result = task.getResult();
    syncServiceMock.reset();
    // WHEN
    provisioningService.deleteObject(ShadowType.class, ACCOUNT_LECHUCK_OID, null, null, task, result);
    // THEN
    result.computeStatus();
    display("add object result", result);
    TestUtil.assertSuccess("addObject has failed (result)", result);
    syncServiceMock.assertNotifySuccessOnly();
    // Check if the account is gone and that group membership is gone as well
    DummyAccount dummyAccount = getDummyAccount(ACCOUNT_LECHUCK_NAME, leChuckIcfUid);
    assertNull("Dummy account is NOT gone", dummyAccount);
    // Make sure that privilege object is still there
    DummyPrivilege priv = getDummyPrivilegeAssert(PRIVILEGE_PILLAGE_NAME, pillageIcfUid);
    assertNotNull("Privilege object is gone!", priv);
    DummyGroup group = getDummyGroupAssert(GROUP_PIRATES_NAME, piratesIcfUid);
    assertNoMember(group, ACCOUNT_LECHUCK_NAME);
    try {
        repositoryService.getObject(ShadowType.class, ACCOUNT_LECHUCK_OID, null, result);
        AssertJUnit.fail("Shadow (repo) is not gone");
    } catch (ObjectNotFoundException e) {
    // This is expected
    }
    try {
        provisioningService.getObject(ShadowType.class, ACCOUNT_LECHUCK_OID, null, task, result);
        AssertJUnit.fail("Shadow (provisioning) is not gone");
    } catch (ObjectNotFoundException e) {
    // This is expected
    }
    assertSteadyResource();
}
Also used : Task(com.evolveum.midpoint.task.api.Task) ObjectNotFoundException(com.evolveum.midpoint.util.exception.ObjectNotFoundException) OperationResult(com.evolveum.midpoint.schema.result.OperationResult) DummyPrivilege(com.evolveum.icf.dummy.resource.DummyPrivilege) DummyAccount(com.evolveum.icf.dummy.resource.DummyAccount) DummyGroup(com.evolveum.icf.dummy.resource.DummyGroup) Test(org.testng.annotations.Test)

Example 75 with ObjectNotFoundException

use of com.evolveum.midpoint.util.exception.ObjectNotFoundException in project midpoint by Evolveum.

the class TestDummyNegative method test230GetAccountDeletedShadow.

/**
	 * Try to get an account when a shadow has been deleted (but the account exists). 
	 * Proper ObjectNotFoundException is expected, compensation should not run. 
	 */
@Test
public void test230GetAccountDeletedShadow() throws Exception {
    final String TEST_NAME = "test230GetAccountDeletedShadow";
    TestUtil.displayTestTile(TEST_NAME);
    // GIVEN
    Task task = taskManager.createTaskInstance(TestDummyNegative.class.getName() + "." + TEST_NAME);
    OperationResult result = task.getResult();
    PrismObject<ShadowType> account = PrismTestUtil.parseObject(ACCOUNT_MORGAN_FILE);
    String shadowOid = provisioningService.addObject(account, null, null, task, result);
    repositoryService.deleteObject(ShadowType.class, shadowOid, result);
    // reset
    task = taskManager.createTaskInstance(TestDummyNegative.class.getName() + "." + TEST_NAME);
    result = task.getResult();
    syncServiceMock.reset();
    try {
        // WHEN
        provisioningService.getObject(ShadowType.class, shadowOid, null, task, result);
        AssertJUnit.fail("Unexpected success");
    } catch (ObjectNotFoundException e) {
        // this is expected
        display("Expected exception", e);
        result.computeStatus();
        display("Result", result);
        TestUtil.assertFailure(result);
    }
    syncServiceMock.assertNoNotifyChange();
}
Also used : Task(com.evolveum.midpoint.task.api.Task) ShadowType(com.evolveum.midpoint.xml.ns._public.common.common_3.ShadowType) ObjectNotFoundException(com.evolveum.midpoint.util.exception.ObjectNotFoundException) OperationResult(com.evolveum.midpoint.schema.result.OperationResult) Test(org.testng.annotations.Test)

Aggregations

ObjectNotFoundException (com.evolveum.midpoint.util.exception.ObjectNotFoundException)291 SchemaException (com.evolveum.midpoint.util.exception.SchemaException)214 OperationResult (com.evolveum.midpoint.schema.result.OperationResult)200 ExpressionEvaluationException (com.evolveum.midpoint.util.exception.ExpressionEvaluationException)100 SecurityViolationException (com.evolveum.midpoint.util.exception.SecurityViolationException)93 CommunicationException (com.evolveum.midpoint.util.exception.CommunicationException)90 ConfigurationException (com.evolveum.midpoint.util.exception.ConfigurationException)88 Task (com.evolveum.midpoint.task.api.Task)75 SystemException (com.evolveum.midpoint.util.exception.SystemException)71 ObjectAlreadyExistsException (com.evolveum.midpoint.util.exception.ObjectAlreadyExistsException)64 PrismObject (com.evolveum.midpoint.prism.PrismObject)52 ShadowType (com.evolveum.midpoint.xml.ns._public.common.common_3.ShadowType)42 Test (org.testng.annotations.Test)40 ObjectDelta (com.evolveum.midpoint.prism.delta.ObjectDelta)38 ArrayList (java.util.ArrayList)35 PolyString (com.evolveum.midpoint.prism.polystring.PolyString)33 PolicyViolationException (com.evolveum.midpoint.util.exception.PolicyViolationException)32 ObjectType (com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectType)30 QName (javax.xml.namespace.QName)29 ResourceType (com.evolveum.midpoint.xml.ns._public.common.common_3.ResourceType)28