[jbpm-commits] JBoss JBPM SVN: r5796 - in jbpm4/trunk/modules/test-upgrade/src: test/java/org/jbpm/test/upgrade and 1 other directory.

do-not-reply at jboss.org do-not-reply at jboss.org
Mon Oct 26 06:42:40 EDT 2009


Author: jbarrez
Date: 2009-10-26 06:42:39 -0400 (Mon, 26 Oct 2009)
New Revision: 5796

Modified:
   jbpm4/trunk/modules/test-upgrade/src/main/java/org/jbpm/upgrade/BeforeUpgrade.java
   jbpm4/trunk/modules/test-upgrade/src/test/java/org/jbpm/test/upgrade/Process2AfterUpgradeTest.java
   jbpm4/trunk/modules/test-upgrade/src/test/java/org/jbpm/test/upgrade/Process3AfterUpgradeTest.java
Log:
Completed after upgrade test cases

Modified: jbpm4/trunk/modules/test-upgrade/src/main/java/org/jbpm/upgrade/BeforeUpgrade.java
===================================================================
--- jbpm4/trunk/modules/test-upgrade/src/main/java/org/jbpm/upgrade/BeforeUpgrade.java	2009-10-26 10:26:10 UTC (rev 5795)
+++ jbpm4/trunk/modules/test-upgrade/src/main/java/org/jbpm/upgrade/BeforeUpgrade.java	2009-10-26 10:42:39 UTC (rev 5796)
@@ -122,7 +122,7 @@
     // Deploy test process
     deploy(TEST_PROCESS_2);
     
-    // Start 6 instances, of which 3 will be ended
+    // Start 7 instances, of which 3 will be ended
     List<String> ids = new ArrayList<String>();
     for (int i = 0; i < 7; i++) {
       

Modified: jbpm4/trunk/modules/test-upgrade/src/test/java/org/jbpm/test/upgrade/Process2AfterUpgradeTest.java
===================================================================
--- jbpm4/trunk/modules/test-upgrade/src/test/java/org/jbpm/test/upgrade/Process2AfterUpgradeTest.java	2009-10-26 10:26:10 UTC (rev 5795)
+++ jbpm4/trunk/modules/test-upgrade/src/test/java/org/jbpm/test/upgrade/Process2AfterUpgradeTest.java	2009-10-26 10:42:39 UTC (rev 5796)
@@ -1,8 +1,11 @@
 package org.jbpm.test.upgrade;
 
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 
+import org.jbpm.api.Execution;
 import org.jbpm.api.ProcessDefinition;
 import org.jbpm.api.ProcessInstance;
 import org.jbpm.api.history.HistoryProcessInstance;
@@ -11,6 +14,10 @@
 
   private static final String PROCESS_2_KEY = "testprocess2";
   
+  private static final String STATE_MORE_THAN_5 = "more than 5";
+  
+  private static final String VARIABLE_KEY = "var";
+  
   public void testDataValid() {
 
     // 4 process instances should be active
@@ -22,7 +29,7 @@
     for (ProcessInstance processInstance : procInstances) {
       Set<String> activeActivities = processInstance.findActiveActivityNames();
       assertEquals(1, activeActivities.size());
-      assertActivityActive(processInstance.getId(), "more than 5");
+      assertActivityActive(processInstance.getId(), STATE_MORE_THAN_5);
     }
     
     // 4 process instances should have ended
@@ -31,12 +38,47 @@
     
   }
 
-  @Override
   public void testContinueExistingInstance() {
+    
+    final String piKey = PROCESS_2_KEY + "-3";
+    ProcessInstance pi = findProcessInstanceByKey(piKey);
+    Set<String> activeActivities = pi.findActiveActivityNames();
+    assertEquals(1, activeActivities.size());
+    
+    // Resignalling it should put it again in "more than 5"
+    Execution execution = pi.findActiveExecutionIn(STATE_MORE_THAN_5);
+    executionService.signalExecutionById(execution.getId());
+    
+    pi = findProcessInstanceByKey(piKey);
+    activeActivities = pi.findActiveActivityNames();
+    assertEquals(1, activeActivities.size());
+    execution = pi.findActiveExecutionIn(STATE_MORE_THAN_5);
+    
+    // Changing the variable to < 5 and signal the execution should end the proc
+    Map<String, Object> vars = new HashMap<String, Object>();
+    vars.put(VARIABLE_KEY, 3);
+    executionService.signalExecutionById(execution.getId(), vars);
+    assertProcessInstanceEnded(pi);
+    
   }
 
-  @Override
   public void testStartFreshProcessInstance() {
+    
+    // Start a new ProcessInstance with var < 5 -> will be in wait state
+    Map<String, Object> vars = new HashMap<String, Object>();
+    vars.put(VARIABLE_KEY, 7);
+    ProcessInstance pi = executionService.startProcessInstanceByKey(PROCESS_2_KEY, vars);
+    
+    Set<String> activeActivities = pi.findActiveActivityNames();
+    assertEquals(1, activeActivities.size());
+    assertEquals(STATE_MORE_THAN_5, activeActivities.iterator().next());
+    
+    // Signalling with a var < 5 will end the process instance 
+    Execution execution = pi.findActiveExecutionIn(STATE_MORE_THAN_5);
+    vars.put(VARIABLE_KEY, 2);
+    executionService.signalExecutionById(execution.getId(), vars);
+    assertProcessInstanceEnded(pi);
+    
   }
   
 }

Modified: jbpm4/trunk/modules/test-upgrade/src/test/java/org/jbpm/test/upgrade/Process3AfterUpgradeTest.java
===================================================================
--- jbpm4/trunk/modules/test-upgrade/src/test/java/org/jbpm/test/upgrade/Process3AfterUpgradeTest.java	2009-10-26 10:26:10 UTC (rev 5795)
+++ jbpm4/trunk/modules/test-upgrade/src/test/java/org/jbpm/test/upgrade/Process3AfterUpgradeTest.java	2009-10-26 10:42:39 UTC (rev 5796)
@@ -11,6 +11,10 @@
 
   private static final String PROCESS_3_KEY = "testprocess3";
   
+  private static final String TASK_NAME = "do something important";
+  
+  private static final String TASK_DONE_OUTCOME = "done";
+  
   public void testDataValid() {
 
     // 2 process instances should be active
@@ -33,12 +37,36 @@
     
   }
 
-  @Override
   public void testContinueExistingInstance() {
+    
+    // There is one process instance currently waiting at the human task
+    ProcessInstance pi = findProcessInstanceByKey(PROCESS_3_KEY + "-1");
+    Job job = managementService.createJobQuery().processInstanceId(pi.getId()).uniqueResult();
+    assertNotNull(job);
+    
+    Task task = taskService.createTaskQuery().processInstanceId(pi.getId()).uniqueResult();
+    assertEquals(TASK_NAME, task.getName());
+    taskService.completeTask(task.getId(), TASK_DONE_OUTCOME);
+    
+    assertProcessInstanceEnded(pi);
+    List<Job> jobs = managementService.createJobQuery().processInstanceId(pi.getId()).list();
+    assertEquals(0, jobs.size());
+    
   }
 
-  @Override
   public void testStartFreshProcessInstance() {
+    
+    ProcessInstance pi = executionService.startProcessInstanceByKey(PROCESS_3_KEY);
+    Task task = taskService.createTaskQuery().processInstanceId(pi.getId()).uniqueResult();
+    assertEquals(TASK_NAME, task.getName());
+    
+    Job job = managementService.createJobQuery().processInstanceId(pi.getId()).uniqueResult();
+    assertNotNull(job);
+    
+    taskService.completeTask(task.getId(), TASK_DONE_OUTCOME);
+    assertProcessInstanceEnded(pi);
+    List<Job> jobs = managementService.createJobQuery().processInstanceId(pi.getId()).list();
+    assertEquals(0, jobs.size());
   }
   
 }



More information about the jbpm-commits mailing list