Esempio n. 1
0
        public virtual void testCreateCaseInstanceByKeyWithoutTenantId()
        {
            deployment(CMMN_FILE);

            caseService.withCaseDefinitionByKey(CASE_DEFINITION_KEY).caseDefinitionWithoutTenantId().create();

            CaseInstanceQuery query = caseService.createCaseInstanceQuery();

            assertThat(query.count(), @is(1L));
            assertThat(query.singleResult().TenantId, @is(nullValue()));
        }
Esempio n. 2
0
        public virtual void testCaseRefTenantIdExpression()
        {
            deployment(CMMN_TENANT_EXPR);
            deploymentForTenant(TENANT_ONE, CMMN_CASE);

            caseService.withCaseDefinitionByKey("caseTaskCase").create();

            CaseInstanceQuery query = caseService.createCaseInstanceQuery().caseDefinitionKey("oneTaskCase");

            assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(1L));
        }
Esempio n. 3
0
        public virtual void testCreateCaseInstanceByKeyWithoutTenantIdNoAuthenticatedTenants()
        {
            identityService.setAuthentication("user", null, null);

            deployment(CMMN_FILE);

            caseService.withCaseDefinitionByKey(CASE_DEFINITION_KEY).caseDefinitionWithoutTenantId().create();

            CaseInstanceQuery query = caseService.createCaseInstanceQuery();

            assertThat(query.count(), @is(1L));
        }
Esempio n. 4
0
        public virtual void testStartCaseInstanceWithVersionBinding()
        {
            deploymentForTenant(TENANT_ONE, CMMN_VERSION, CMMN_CASE);
            deploymentForTenant(TENANT_TWO, CMMN_VERSION, CMMN_CASE);

            createCaseInstance("caseTaskCaseVersion", TENANT_ONE);
            createCaseInstance("caseTaskCaseVersion", TENANT_TWO);

            CaseInstanceQuery query = caseService.createCaseInstanceQuery().caseDefinitionKey("oneTaskCase");

            assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(1L));
            assertThat(query.tenantIdIn(TENANT_TWO).count(), @is(1L));
        }
Esempio n. 5
0
        public virtual void testStartCaseInstanceWithLatestBindingSameVersion()
        {
            deploymentForTenant(TENANT_ONE, CMMN_LATEST_WITH_MANUAL_ACTIVATION, CMMN_CASE);
            deploymentForTenant(TENANT_TWO, CMMN_LATEST_WITH_MANUAL_ACTIVATION, CMMN_CASE);

            createCaseInstance("caseTaskCase", TENANT_ONE);
            createCaseInstance("caseTaskCase", TENANT_TWO);

            CaseInstanceQuery query = caseService.createCaseInstanceQuery().caseDefinitionKey("oneTaskCase");

            assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(1L));
            assertThat(query.tenantIdIn(TENANT_TWO).count(), @is(1L));
        }
Esempio n. 6
0
        public virtual void testCaseRefTenantIdExpression()
        {
            BpmnModelInstance callingProcess = Bpmn.createExecutableProcess("callingProcess").startEvent().callActivity().camundaCaseRef("Case_1").camundaCaseTenantId("${'" + TENANT_ONE + "'}").endEvent().done();

            deploymentForTenant(TENANT_ONE, CMMN);
            deployment(callingProcess);

            runtimeService.startProcessInstanceByKey("callingProcess");

            CaseInstanceQuery query = caseService.createCaseInstanceQuery().caseDefinitionKey("Case_1");

            assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(1L));
        }
Esempio n. 7
0
        public virtual void testCreateCaseInstanceByKeyWithTenantIdDisabledTenantCheck()
        {
            processEngineConfiguration.TenantCheckEnabled = false;
            identityService.setAuthentication("user", null, null);

            deploymentForTenant(TENANT_ONE, CMMN_FILE);

            caseService.withCaseDefinitionByKey(CASE_DEFINITION_KEY).caseDefinitionTenantId(TENANT_ONE).create();

            CaseInstanceQuery query = caseService.createCaseInstanceQuery();

            assertThat(query.count(), @is(1L));
            assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(1L));
        }
Esempio n. 8
0
        public virtual void testCreateCaseInstanceByKeyWithAuthenticatedTenant()
        {
            identityService.setAuthentication("user", null, Arrays.asList(TENANT_ONE));

            deploymentForTenant(TENANT_ONE, CMMN_FILE);
            deploymentForTenant(TENANT_TWO, CMMN_FILE);

            caseService.withCaseDefinitionByKey(CASE_DEFINITION_KEY).create();

            CaseInstanceQuery query = caseService.createCaseInstanceQuery();

            assertThat(query.count(), @is(1L));
            assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(1L));
        }
Esempio n. 9
0
        public virtual void testCreateCaseInstanceByIdAuthenticatedTenant()
        {
            deploymentForTenant(TENANT_ONE, CMMN_FILE);

            CaseDefinition caseDefinition = repositoryService.createCaseDefinitionQuery().singleResult();

            identityService.setAuthentication("user", null, Arrays.asList(TENANT_ONE));

            caseService.withCaseDefinition(caseDefinition.Id).create();

            CaseInstanceQuery query = caseService.createCaseInstanceQuery();

            assertThat(query.count(), @is(1L));
            assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(1L));
        }
Esempio n. 10
0
        public virtual void testStartCaseInstanceWithVersionBinding()
        {
            BpmnModelInstance callingProcess = Bpmn.createExecutableProcess("callingProcess").startEvent().callActivity().camundaCaseRef("Case_1").camundaCaseBinding("version").camundaCaseVersion("1").endEvent().done();

            deploymentForTenant(TENANT_ONE, CMMN, callingProcess);
            deploymentForTenant(TENANT_TWO, CMMN, callingProcess);

            runtimeService.createProcessInstanceByKey("callingProcess").processDefinitionTenantId(TENANT_ONE).execute();
            runtimeService.createProcessInstanceByKey("callingProcess").processDefinitionTenantId(TENANT_TWO).execute();

            CaseInstanceQuery query = caseService.createCaseInstanceQuery().caseDefinitionKey("Case_1");

            assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(1L));
            assertThat(query.tenantIdIn(TENANT_TWO).count(), @is(1L));
        }
Esempio n. 11
0
        public virtual void testStartCaseInstanceWithLatestBindingDifferentVersion()
        {
            deploymentForTenant(TENANT_ONE, CMMN_LATEST_WITH_MANUAL_ACTIVATION, CMMN_CASE);

            deploymentForTenant(TENANT_TWO, CMMN_LATEST_WITH_MANUAL_ACTIVATION, CMMN_CASE);
            deploymentForTenant(TENANT_TWO, CMMN_CASE);

            createCaseInstance("caseTaskCase", TENANT_ONE);
            createCaseInstance("caseTaskCase", TENANT_TWO);

            CaseInstanceQuery query = caseService.createCaseInstanceQuery().caseDefinitionKey("oneTaskCase");

            assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(1L));

            CaseDefinition latestCaseDefinitionTenantTwo = repositoryService.createCaseDefinitionQuery().caseDefinitionKey("oneTaskCase").tenantIdIn(TENANT_TWO).latestVersion().singleResult();

            query = caseService.createCaseInstanceQuery().caseDefinitionId(latestCaseDefinitionTenantTwo.Id);
            assertThat(query.count(), @is(1L));
        }
Esempio n. 12
0
        public virtual void testStartCaseInstanceWithLatestBindingDifferentVersion()
        {
            BpmnModelInstance callingProcess = Bpmn.createExecutableProcess("callingProcess").startEvent().callActivity().camundaCaseRef("Case_1").camundaCaseBinding("latest").endEvent().done();

            deploymentForTenant(TENANT_ONE, CMMN, callingProcess);

            deploymentForTenant(TENANT_TWO, CMMN, callingProcess);
            deploymentForTenant(TENANT_TWO, CMMN);

            runtimeService.createProcessInstanceByKey("callingProcess").processDefinitionTenantId(TENANT_ONE).execute();
            runtimeService.createProcessInstanceByKey("callingProcess").processDefinitionTenantId(TENANT_TWO).execute();

            CaseInstanceQuery query = caseService.createCaseInstanceQuery().caseDefinitionKey("Case_1");

            assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(1L));

            CaseDefinition latestCaseDefinitionTenantTwo = repositoryService.createCaseDefinitionQuery().tenantIdIn(TENANT_TWO).latestVersion().singleResult();

            query = caseService.createCaseInstanceQuery().caseDefinitionId(latestCaseDefinitionTenantTwo.Id);
            assertThat(query.count(), @is(1L));
        }