public virtual void testMigrateGatewayWithTimerEvent() { // given var sourceProcessDefinition = testHelper.DeployAndGetDefinition(EventBasedGatewayModels.TIMER_EVENT_BASED_GW_PROCESS); var targetProcessDefinition = testHelper.DeployAndGetDefinition(EventBasedGatewayModels.TIMER_EVENT_BASED_GW_PROCESS); var migrationPlan = rule.RuntimeService.CreateMigrationPlan(sourceProcessDefinition.Id, targetProcessDefinition.Id) .MapActivities("eventBasedGateway", "eventBasedGateway") .Build(); // when var processInstance = testHelper.CreateProcessInstanceAndMigrate(migrationPlan); // then testHelper.AssertIntermediateTimerJobRemoved("timerCatch"); testHelper.AssertIntermediateTimerJobCreated("timerCatch"); var timerJob = testHelper.SnapshotAfterMigration.Jobs[0]; rule.ManagementService.ExecuteJob(timerJob.Id); testHelper.CompleteTask("afterTimerCatch"); testHelper.AssertProcessEnded(processInstance.Id); }