public virtual void testCannotMigrateActivityInstance()
        {
            // given
//JAVA TO C# CONVERTER WARNING: The .NET Type.FullName property will not always yield results identical to the Java Class.GetName method:
            var model = ProcessModels.NewModel()
                        .StartEvent()
                        .ServiceTask("serviceTask")
                        .CamundaClass(typeof(SignallableServiceTaskDelegate).FullName)
                        .EndEvent()
                        .Done();

            var sourceProcessDefinition = testHelper.DeployAndGetDefinition(model);
            var targetProcessDefinition = testHelper.DeployAndGetDefinition(model);

            var migrationPlan =
                rule.RuntimeService.CreateMigrationPlan(sourceProcessDefinition.Id, targetProcessDefinition.Id)
                .MapActivities("serviceTask", "serviceTask")
                .Build();

            // when
            try
            {
                testHelper.CreateProcessInstanceAndMigrate(migrationPlan);
                Assert.Fail("should Assert.Fail");
            }
            catch (MigratingProcessInstanceValidationException e)
            {
                // then
                MigratingProcessInstanceValidationReportAssert.That(e.ValidationReport)
                .HasActivityInstanceFailures("serviceTask",
                                             "The type of the source activity is not supported for activity instance migration");
            }
        }
Esempio n. 2
0
        public virtual void testCannotMigrateWhenNotAllTransitionInstancesAreMapped()
        {
            // given
            IBpmnModelInstance model = ModifiableBpmnModelInstance.Modify(ProcessModels.ParallelGatewayProcess)
                                       //.ActivityBuilder("userTask1")
                                       //.CamundaAsyncBefore()
                                       //.MoveToActivity("userTask2")
                                       //.CamundaAsyncBefore()
                                       //.Done()
            ;

            var sourceProcessDefinition = testHelper.DeployAndGetDefinition(model);
            var targetProcessDefinition = testHelper.DeployAndGetDefinition(model);

            var migrationPlan =
                rule.RuntimeService.CreateMigrationPlan(sourceProcessDefinition.Id, targetProcessDefinition.Id)
                .MapActivities("userTask1", "userTask1")
                .Build();


            // when
            try
            {
                testHelper.CreateProcessInstanceAndMigrate(migrationPlan);
                Assert.Fail("should not succeed because the userTask2 instance is not mapped");
            }
            catch (MigratingProcessInstanceValidationException e)
            {
                MigratingProcessInstanceValidationReportAssert.That(e.ValidationReport)
                .HasTransitionInstanceFailures("userTask2",
                                               "There is no migration instruction for this instance's activity");
            }
        }