Exemplo n.º 1
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void shouldScheduleToNow()
        public virtual void shouldScheduleToNow()
        {
            // given
            testRule.deploy(PROCESS);

            ClockUtil.CurrentTime = END_DATE;

            ProcessInstance processInstance = runtimeService.startProcessInstanceByKey(PROCESS_KEY, Variables.putValue("aVariableName", Variables.stringValue("aVariableValue")));

            for (int i = 0; i < 5; i++)
            {
                runtimeService.setVariable(processInstance.Id, "aVariableName", Variables.stringValue("anotherVariableValue" + i));
            }

            string taskId = taskService.createTaskQuery().singleResult().Id;

            taskService.complete(taskId);

            engineConfiguration.HistoryCleanupBatchSize = 5;
            engineConfiguration.initHistoryCleanup();

            DateTime removalTime = addDays(END_DATE, 5);

            ClockUtil.CurrentTime = removalTime;

            // when
            runHistoryCleanup();

            Job job = historyService.findHistoryCleanupJobs()[0];

            // then
            assertThat(job.Duedate, @is(removalTime));
        }
Exemplo n.º 2
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void shouldGetUntypedVariable()
        public virtual void shouldGetUntypedVariable()
        {
            ProcessInstance instance = runtimeService.startProcessInstanceByKey(PROCESS_DEFINITION_KEY);

            runtimeService.setVariable(instance.Id, VARIABLE_NAME, typedValue);

            object variableValue = runtimeService.getVariable(instance.Id, VARIABLE_NAME);

            assertEquals(typedValue.Value, variableValue);
        }
Exemplo n.º 3
0
        public virtual void testQueryAddExecutionVariableOperation()
        {
            // given
            process = runtimeService.startProcessInstanceByKey("oneTaskProcess");

            // when
            runtimeService.setVariable(process.Id, "testVariable1", "THIS IS TESTVARIABLE!!!");

            // then
            verifyVariableOperationAsserts(1, org.camunda.bpm.engine.history.UserOperationLogEntry_Fields.OPERATION_TYPE_SET_VARIABLE, org.camunda.bpm.engine.history.UserOperationLogEntry_Fields.CATEGORY_OPERATOR);
        }
Exemplo n.º 4
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: public void execute(org.camunda.bpm.engine.delegate.DelegateExecution execution) throws Exception
        public virtual void execute(DelegateExecution execution)
        {
            ProcessEngineServices services       = execution.ProcessEngineServices;
            RuntimeService        runtimeService = services.RuntimeService;

            runtimeService.setVariable(execution.Id, "serviceTaskCalled", true);
        }
Exemplo n.º 5
0
        public virtual void notify(DelegateTask delegateTask)
        {
            ProcessEngineServices services       = delegateTask.ProcessEngineServices;
            RuntimeService        runtimeService = services.RuntimeService;

            runtimeService.setVariable(delegateTask.ExecutionId, "taskListenerCalled", true);
        }
Exemplo n.º 6
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: public void execute(org.camunda.bpm.engine.delegate.DelegateExecution execution) throws Exception
        public virtual void execute(DelegateExecution execution)
        {
            RuntimeService runtimeService = execution.ProcessEngineServices.RuntimeService;

            ObjectValue jsonSerializeable = Variables.objectValue(createJsonSerializable()).serializationDataFormat(Variables.SerializationDataFormats.JSON).create();

            // this should be executed in the context of the current process application
            runtimeService.setVariable(execution.ProcessInstanceId, VARIABLE_NAME, jsonSerializeable);
        }
Exemplo n.º 7
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testlocalConfigurationWithNestedChangingExpression() throws java.text.ParseException
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
        public virtual void testlocalConfigurationWithNestedChangingExpression()
        {
            BpmnModelInstance bpmnModelInstance = Bpmn.createExecutableProcess("process").startEvent().serviceTask().camundaClass("foo").camundaAsyncBefore().camundaFailedJobRetryTimeCycle("${var}").endEvent().done();

            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
            DateTime         startDate        = simpleDateFormat.parse("2017-01-01T09:55:00");

            ClockUtil.CurrentTime = startDate;

            testRule.deploy(bpmnModelInstance);

            VariableMap @params = Variables.createVariables();

            @params.putValue("var", "${nestedVar1},PT15M,${nestedVar3}");
            @params.putValue("nestedVar", "PT13M");
            @params.putValue("nestedVar1", "PT5M");
            @params.putValue("nestedVar3", "PT25M");
            ProcessInstance pi = runtimeService.startProcessInstanceByKey("process", @params);

            ClockUtil.CurrentTime = SIMPLE_DATE_FORMAT.parse("2017-01-01T09:55:00");

            assertNotNull(pi);

            DateTime currentTime = SIMPLE_DATE_FORMAT.parse("2017-01-01T10:00:00");

            ClockUtil.CurrentTime = currentTime;

            string processInstanceId = pi.ProcessInstanceId;

            int jobRetries = executeJob(processInstanceId);

            assertEquals(3, jobRetries);
            currentTime = DateUtils.addMinutes(currentTime, 5);
            assertLockExpirationTime(currentTime);
            ClockUtil.CurrentTime = currentTime;

            jobRetries = executeJob(processInstanceId);
            assertEquals(2, jobRetries);
            currentTime = DateUtils.addMinutes(currentTime, 15);
            assertLockExpirationTime(currentTime);
            ClockUtil.CurrentTime = currentTime;

            runtimeService.setVariable(pi.ProcessInstanceId, "var", "${nestedVar}");

            jobRetries = executeJob(processInstanceId);
            assertEquals(1, jobRetries);
            currentTime = DateUtils.addMinutes(currentTime, 13);
            assertLockExpirationTime(currentTime);
            ClockUtil.CurrentTime = currentTime;

            jobRetries = executeJob(processInstanceId);
            assertEquals(0, jobRetries);
        }
Exemplo n.º 8
0
        public virtual void testLogSetVariableWithoutAuthentication()
        {
            // given
            string processInstanceId = runtimeService.startProcessInstanceByKey("process").Id;

            // when
            runtimeService.setVariable(processInstanceId, "aVariable", "aValue");

            // then
            assertEquals(3, userOperationLogQuery().count());
            assertEquals(1, userOperationLogQuery().operationType(org.camunda.bpm.engine.history.UserOperationLogEntry_Fields.OPERATION_TYPE_SET_VARIABLE).count());
            assertEquals(1, userOperationLogQuery().entityType(EntityTypes.DEPLOYMENT).operationType(org.camunda.bpm.engine.history.UserOperationLogEntry_Fields.OPERATION_TYPE_CREATE).count());
            assertEquals(1, userOperationLogQuery().entityType(EntityTypes.PROCESS_INSTANCE).operationType(org.camunda.bpm.engine.history.UserOperationLogEntry_Fields.OPERATION_TYPE_CREATE).count());
        }
Exemplo n.º 9
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testCanMigrateWithObjectVariableThatFailsOnDeserialization()
        public virtual void testCanMigrateWithObjectVariableThatFailsOnDeserialization()
        {
            // given
            ProcessDefinition sourceProcessDefinition = testHelper.deployAndGetDefinition(ProcessModels.ONE_TASK_PROCESS);
            ProcessDefinition targetProcessDefinition = testHelper.deployAndGetDefinition(ProcessModels.ONE_TASK_PROCESS);

            MigrationPlan migrationPlan = rule.RuntimeService.createMigrationPlan(sourceProcessDefinition.Id, targetProcessDefinition.Id).mapActivities("userTask", "userTask").build();

            ProcessInstance processInstance = rule.RuntimeService.startProcessInstanceById(sourceProcessDefinition.Id);

            ObjectValue objectValue = Variables.serializedObjectValue("does/not/deserialize").serializationDataFormat(Variables.SerializationDataFormats.JAVA).objectTypeName("and.this.is.a.nonexisting.Class").create();

            runtimeService.setVariable(processInstance.Id, "var", objectValue);

            // when
            testHelper.migrateProcessInstance(migrationPlan, processInstance);

            // then
            ObjectValue migratedValue = runtimeService.getVariableTyped(processInstance.Id, "var", false);

            Assert.assertEquals(objectValue.ValueSerialized, migratedValue.ValueSerialized);
            Assert.assertEquals(objectValue.ObjectTypeName, migratedValue.ObjectTypeName);
        }
Exemplo n.º 10
0
        public virtual void testMigrateHistoryVariableInstance()
        {
            //given
            ProcessDefinition sourceDefinition = testHelper.deployAndGetDefinition(ProcessModels.ONE_TASK_PROCESS);
            ProcessDefinition targetDefinition = testHelper.deployAndGetDefinition(modify(ProcessModels.ONE_TASK_PROCESS).changeElementId(ProcessModels.PROCESS_KEY, "new" + ProcessModels.PROCESS_KEY));

            ProcessInstance processInstance = runtimeService.startProcessInstanceById(sourceDefinition.Id);

            runtimeService.setVariable(processInstance.Id, "test", 3537);
            HistoricVariableInstance instance = historyService.createHistoricVariableInstanceQuery().singleResult();

            MigrationPlan migrationPlan = rule.RuntimeService.createMigrationPlan(sourceDefinition.Id, targetDefinition.Id).mapActivities("userTask", "userTask").build();

            //when
            runtimeService.newMigration(migrationPlan).processInstanceIds(Arrays.asList(processInstance.Id)).execute();

            //then
            HistoricVariableInstance migratedInstance = historyService.createHistoricVariableInstanceQuery().singleResult();

            assertEquals(targetDefinition.Key, migratedInstance.ProcessDefinitionKey);
            assertEquals(targetDefinition.Id, migratedInstance.ProcessDefinitionId);
            assertEquals(instance.ActivityInstanceId, migratedInstance.ActivityInstanceId);
            assertEquals(instance.ExecutionId, migratedInstance.ExecutionId);
        }
Exemplo n.º 11
0
        public virtual void testQueryDeleteVariableHistoryOperationOnRunningInstance()
        {
            // given
            process = runtimeService.startProcessInstanceByKey("oneTaskProcess");
            runtimeService.setVariable(process.Id, "testVariable", "test");
            runtimeService.setVariable(process.Id, "testVariable", "test2");
            string variableInstanceId = historyService.createHistoricVariableInstanceQuery().singleResult().Id;

            // when
            historyService.deleteHistoricVariableInstance(variableInstanceId);

            // then
            verifyVariableOperationAsserts(org.camunda.bpm.engine.history.UserOperationLogEntry_Fields.OPERATION_TYPE_DELETE_HISTORY);
        }
Exemplo n.º 12
0
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
//ORIGINAL LINE: @Override public void execute(org.camunda.bpm.engine.delegate.DelegateExecution execution) throws Exception
        public virtual void execute(DelegateExecution execution)
        {
            int count = counter.Count;

            runtimeService.setVariable(execution.Id, "count", count);
        }
Exemplo n.º 13
0
        public virtual void testSetVariable()
        {
            string processInstanceId = runtimeService.createProcessInstanceQuery().processDefinitionKey(PROCESS_DEF_KEY).listPage(0, 1).get(0).Id;

            runtimeService.setVariable(processInstanceId, "abc", "def");
        }
Exemplo n.º 14
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void failToDeleteHistoricVariableInstanceNoAuthenticatedTenants()
        public virtual void failToDeleteHistoricVariableInstanceNoAuthenticatedTenants()
        {
            testRule.deployForTenant(TENANT_ONE, BPMN_ONETASK_PROCESS);
            string processInstanceId = startProcessInstance(null);

            runtimeService.setVariable(processInstanceId, "myVariable", "testValue");
            string variableInstanceId = historyService.createHistoricVariableInstanceQuery().processInstanceId(processInstanceId).singleResult().Id;

            identityService.setAuthentication("user", null, null);

            thrown.expect(typeof(ProcessEngineException));
            thrown.expectMessage("Cannot delete the historic variable instance '" + variableInstanceId + "' because it belongs to no authenticated tenant.");

            try
            {
                historyService.deleteHistoricVariableInstance(variableInstanceId);
            }
            finally
            {
                cleanUpAfterVariableInstanceTest(processInstanceId);
            }
        }