[jbpm-commits] JBoss JBPM SVN: r6379 - in jbpm4/trunk/modules: test-db/src/test/java/org/jbpm/test/activity/subprocess and 1 other directory.

do-not-reply at jboss.org do-not-reply at jboss.org
Fri May 28 02:02:00 EDT 2010


Author: rebody
Date: 2010-05-28 02:01:59 -0400 (Fri, 28 May 2010)
New Revision: 6379

Added:
   jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/DynamicSubProcessTest.java
   jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/SubProcessParameterOutTest.java
Modified:
   jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java
   jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/SubProcessDeleteTest.java
   jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/SubProcessTest.java
Log:
JBPM-2856 delete sub process instance when it ended, and do some refactor for subprocess testcase.

Modified: jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java
===================================================================
--- jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java	2010-05-28 05:53:35 UTC (rev 6378)
+++ jbpm4/trunk/modules/pvm/src/main/java/org/jbpm/pvm/internal/model/ExecutionImpl.java	2010-05-28 06:01:59 UTC (rev 6379)
@@ -373,6 +373,9 @@
       fire(Event.END, getProcessDefinition());
 
       if (superProcessExecution!=null) {
+        if (dbSession!=null) {
+          dbSession.delete(this);
+        }
         log.trace(toString()+" signals super process execution");
         superProcessExecution.signal();
       }

Added: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/DynamicSubProcessTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/DynamicSubProcessTest.java	                        (rev 0)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/DynamicSubProcessTest.java	2010-05-28 06:01:59 UTC (rev 6379)
@@ -0,0 +1,168 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+/**
+ *
+ */
+package org.jbpm.test.activity.subprocess;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.jdt.internal.compiler.ast.AssertStatement;
+import org.jbpm.api.JbpmException;
+import org.jbpm.api.ProcessInstance;
+import org.jbpm.api.task.Task;
+import org.jbpm.test.JbpmTestCase;
+
+
+/**
+ * Test case for different usages of the subprocess activity.
+ *
+ * @author Joram Barrez
+ */
+public class DynamicSubProcessTest extends JbpmTestCase {
+
+  private static final String SUB_PROCESS =
+    "<process name='SubProcessReview'>" +
+    "  <start>" +
+    "    <transition to='get approval'/>" +
+    "  </start>" +
+    "  <task name='get approval' assignee='johndoe'>" +
+    "    <transition name='ok' to='ok'/>" +
+    "    <transition name='nok' to='nok'/>" +
+    "    <transition name='reject' to='reject'/>" +
+    "  </task>" +
+    "  <end name='ok' />" +
+    "  <end name='nok' />" +
+    "  <end name='reject' />" +
+    "</process>";
+
+  private static final String MAIN_PROCESS_SUB_EL =
+    "<process name='mainProcess'>" +
+    "  <start>" +
+    "    <transition to='review' />" +
+    "  </start>" +
+    "  <sub-process name='review' sub-process-key='#{dynamic_subprocess}'>" +
+    "    <transition name='ok' to='next step'/>" +
+    "    <transition name='nok' to='update'/>" +
+    "    <transition name='reject' to='close'/>" +
+    "  </sub-process>" +
+    "  <state name='next step'/>" +
+    "  <state name='update'/>" +
+    "  <end name='close'/>" +
+    "</process>";
+
+  private static final String MAIN_PROCESS_SUB_EL_ID =
+    "<process name='mainProcess'>" +
+    "  <start>" +
+    "    <transition to='review' />" +
+    "  </start>" +
+    "  <sub-process name='review' sub-process-id='#{dynamic_subprocess}'>" +
+    "    <transition name='ok' to='next step'/>" +
+    "    <transition name='nok' to='update'/>" +
+    "    <transition name='reject' to='close'/>" +
+    "  </sub-process>" +
+    "  <state name='next step'/>" +
+    "  <state name='update'/>" +
+    "  <end name='close'/>" +
+    "</process>";
+
+  private static final String MAIN_PROCESS_SUB_ID =
+    "<process name='mainProcess'>" +
+    "  <start>" +
+    "    <transition to='review' />" +
+    "  </start>" +
+    "  <sub-process name='review' sub-process-id='SubProcessReview-1'>" +
+    "    <transition name='ok' to='next step'/>" +
+    "    <transition name='nok' to='update'/>" +
+    "    <transition name='reject' to='close'/>" +
+    "  </sub-process>" +
+    "  <state name='next step'/>" +
+    "  <state name='update'/>" +
+    "  <end name='close'/>" +
+    "</process>";
+
+  public void testDynamicSubProcess() {
+    deployJpdlXmlString(SUB_PROCESS);
+    deployJpdlXmlString(MAIN_PROCESS_SUB_EL);
+
+    Map<String, String> vars = new HashMap<String, String>();
+    vars.put("dynamic_subprocess", "SubProcessReview");
+    ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess",vars);
+    Task task = taskService.findPersonalTasks("johndoe").get(0);
+    taskService.completeTask(task.getId(), "reject");
+    assertProcessInstanceEnded(processInstance);
+  }
+
+  public void testDynamicSubProcessNotFound() {
+    String expectedError = "Subprocess 'DOES_NOT_EXIST' could not be found.";
+    deployJpdlXmlString(SUB_PROCESS);
+    deployJpdlXmlString(MAIN_PROCESS_SUB_EL);
+
+    Map<String, String> vars = new HashMap<String, String>();
+    vars.put("dynamic_subprocess", "DOES_NOT_EXIST");
+    try {
+      ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess",vars);
+      fail("Should not happen, error expected: " + expectedError);
+    } catch (JbpmException je) {
+      assertEquals(expectedError, je.getMessage());
+    }
+  }
+
+  public void testDynamicSubProcessWrongProperty() {
+    String expectedError = "Subprocess key '#{dynamic_subprocess}' could not be resolved.";
+    deployJpdlXmlString(SUB_PROCESS);
+    deployJpdlXmlString(MAIN_PROCESS_SUB_EL);
+
+    Map<String, String> vars = new HashMap<String, String>();
+    vars.put("WRONG_PROPERTY", "VALUE_DOES_NOT_MATTER");
+    try {
+      ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess",vars);
+      fail("Should not happen, error expected: " + expectedError);
+    } catch (JbpmException je) {
+      assertEquals(expectedError, je.getMessage());
+    }
+  }
+
+  public void testDynamicSubProcessWithId() {
+    deployJpdlXmlString(SUB_PROCESS);
+    deployJpdlXmlString(MAIN_PROCESS_SUB_EL_ID);
+
+    Map<String, String> vars = new HashMap<String, String>();
+    vars.put("dynamic_subprocess", "SubProcessReview-1");
+    ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess",vars);
+    Task task = taskService.findPersonalTasks("johndoe").get(0);
+    taskService.completeTask(task.getId(), "reject");
+    assertProcessInstanceEnded(processInstance);
+  }
+
+  public void testSubProcessWithId() {
+    deployJpdlXmlString(SUB_PROCESS);
+    deployJpdlXmlString(MAIN_PROCESS_SUB_ID);
+
+    ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess");
+    Task task = taskService.findPersonalTasks("johndoe").get(0);
+    taskService.completeTask(task.getId(), "reject");
+    assertProcessInstanceEnded(processInstance);
+  }
+
+}

Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/SubProcessDeleteTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/SubProcessDeleteTest.java	2010-05-28 05:53:35 UTC (rev 6378)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/SubProcessDeleteTest.java	2010-05-28 06:01:59 UTC (rev 6379)
@@ -41,21 +41,97 @@
       "  <state name='next step'/>" +
       "</process>"
     );
-      
+
     deployJpdlXmlString(
       "<process name='SubProcessReview'>" +
       "  <start>" +
       "    <transition to='get approval'/>" +
       "  </start>" +
-      "  <state name='get approval'>" +
+      "  <task name='get approval' assignee='johndoe'>" +
       "    <transition to='ok'/>" +
-      "  </state>" +
+      "  </task>" +
       "  <end name='ok' />" +
-      "</process>"  
+      "</process>"
     );
-    
+
     String pid = executionService.startProcessInstanceByKey("MainProcess").getId();
-    
+
+    assertEquals(2, executionService.createProcessInstanceQuery().list().size());
+
     executionService.deleteProcessInstance(pid);
+
+    assertEquals(0, executionService.createProcessInstanceQuery().list().size());
+
+    assertEquals(0, taskService.createTaskQuery().list().size());
   }
+
+  public void testMultipleSubProcess() {
+    deployJpdlXmlString(
+      "<process name='MainProcess'>" +
+      "  <start>" +
+      "    <transition to='review' />" +
+      "  </start>" +
+      "  <sub-process name='review' sub-process-key='SubProcessReview'>" +
+      "    <transition to='second sub process'/>" +
+      "  </sub-process>" +
+      "  <sub-process name='second sub process' sub-process-key='SubProcessReview'>" +
+      "    <transition to='next step'/>" +
+      "  </sub-process>" +
+      "  <state name='next step'/>" +
+      "</process>"
+    );
+
+    deployJpdlXmlString(
+      "<process name='SubProcessReview'>" +
+      "  <start>" +
+      "    <transition to='ok'/>" +
+      "  </start>" +
+      "  <end name='ok' />" +
+      "</process>"
+    );
+
+    String pid = executionService.startProcessInstanceByKey("MainProcess").getId();
+
+    assertEquals(1, executionService.createProcessInstanceQuery().list().size());
+
+    executionService.deleteProcessInstance(pid);
+
+    assertEquals(0, executionService.createProcessInstanceQuery().list().size());
+  }
+
+  public void testSubProcessWithFork() {
+    deployJpdlXmlString(
+      "<process name='MainProcess'>" +
+      "  <start>" +
+      "    <transition to='review' />" +
+      "  </start>" +
+      "  <sub-process name='review' sub-process-key='SubProcessReview'>" +
+      "    <transition to='next step'/>" +
+      "  </sub-process>" +
+      "  <state name='next step'/>" +
+      "</process>"
+    );
+
+    deployJpdlXmlString(
+      "<process name='SubProcessReview'>" +
+      "  <start>" +
+      "    <transition to='fork'/>" +
+      "  </start>" +
+      "  <fork name='fork'>" +
+      "    <transition to='ok'/>" +
+      "    <transition to='wait'/>" +
+      "  </fork>" +
+      "  <state name='wait'/>" +
+      "  <end name='ok' />" +
+      "</process>"
+    );
+
+    String pid = executionService.startProcessInstanceByKey("MainProcess").getId();
+
+    assertEquals(1, executionService.createProcessInstanceQuery().list().size());
+
+    executionService.deleteProcessInstance(pid);
+
+    assertEquals(0, executionService.createProcessInstanceQuery().list().size());
+  }
 }

Added: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/SubProcessParameterOutTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/SubProcessParameterOutTest.java	                        (rev 0)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/SubProcessParameterOutTest.java	2010-05-28 06:01:59 UTC (rev 6379)
@@ -0,0 +1,79 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+/**
+ *
+ */
+package org.jbpm.test.activity.subprocess;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.jbpm.api.JbpmException;
+import org.jbpm.api.ProcessInstance;
+import org.jbpm.api.task.Task;
+import org.jbpm.test.JbpmTestCase;
+
+
+/**
+ * JBPM-2856.
+ *
+ * @author Huisheng Xu
+ */
+public class SubProcessParameterOutTest extends JbpmTestCase {
+
+  private static final String MAIN_PROCESS =
+    "<process name='mainProcess'>" +
+    "  <start>" +
+    "    <transition to='review' />" +
+    "  </start>" +
+    "  <sub-process name='review' sub-process-key='SubProcessReview'>" +
+    "    <parameter-out var='reviewResult' subvar='result' />" +
+    "    <transition name='ok' to='wait'/>" +
+    "  </sub-process>" +
+    "  <state name='wait'>" +
+    "    <transition to='close'/>" +
+    "  </state>" +
+    "  <end name='close'/>" +
+    "</process>";
+
+  private static final String SUB_PROCESS =
+    "<process name='SubProcessReview'>" +
+    "  <start>" +
+    "    <transition to='script'/>" +
+    "  </start>" +
+    "  <script name='script' var='result' expr='#{\"result\"}'>" +
+    "    <transition name='ok' to='ok'/>" +
+    "  </script>" +
+    "  <end name='ok' />" +
+    "</process>";
+
+
+  public void testSubProcessParameterOut() {
+    deployJpdlXmlString(SUB_PROCESS);
+    deployJpdlXmlString(MAIN_PROCESS);
+
+    ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess");
+    assertEquals(1, executionService.createProcessInstanceQuery().list().size());
+
+    assertEquals("result", executionService.getVariable(processInstance.getId(), "reviewResult"));
+  }
+}

Modified: jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/SubProcessTest.java
===================================================================
--- jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/SubProcessTest.java	2010-05-28 05:53:35 UTC (rev 6378)
+++ jbpm4/trunk/modules/test-db/src/test/java/org/jbpm/test/activity/subprocess/SubProcessTest.java	2010-05-28 06:01:59 UTC (rev 6379)
@@ -20,7 +20,7 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 /**
- * 
+ *
  */
 package org.jbpm.test.activity.subprocess;
 
@@ -36,11 +36,11 @@
 
 /**
  * Test case for different usages of the subprocess activity.
- * 
+ *
  * @author Joram Barrez
  */
 public class SubProcessTest extends JbpmTestCase {
-  
+
   private static final String MAIN_PROCESS =
     "<process name='mainProcess'>" +
     "  <start>" +
@@ -52,10 +52,12 @@
     "    <transition name='reject' to='close'/>" +
     "  </sub-process>" +
     "  <state name='next step'/>" +
-    "  <state name='update'/>" +
+    "  <state name='update'>" +
+    "    <transition to='close'/>" +
+    "  </state>" +
     "  <end name='close'/>" +
-    "</process>";  
-    
+    "</process>";
+
   private static final String SUB_PROCESS =
     "<process name='SubProcessReview'>" +
     "  <start>" +
@@ -69,8 +71,8 @@
     "  <end name='ok' />" +
     "  <end name='nok' />" +
     "  <end name='reject' />" +
-    "</process>";  
-  
+    "</process>";
+
   private static final String MAIN_PROCESS_NO_WAIT_STATE =
     "<process name='mainProcess'>" +
     "  <start>" +
@@ -80,153 +82,59 @@
     "    <transition to='theMainEnd'/>" +
     "  </sub-process>" +
     "  <end name='theMainEnd'/>" +
-    "</process>";  
-  
+    "</process>";
+
   private static final String SUB_PROCESS_NO_WAIT_STATE =
     "<process name='SubProcessReview'>" +
     "  <start>" +
     "    <transition to='theEnd'/>" +
     "  </start>" +
     "  <end name='theEnd' />" +
-    "</process>";  
-  
-  private static final String MAIN_PROCESS_SUB_EL =
-    "<process name='mainProcess'>" +
-    "  <start>" +
-    "    <transition to='review' />" +
-    "  </start>" +
-    "  <sub-process name='review' sub-process-key='#{dynamic_subprocess}'>" +
-    "    <transition name='ok' to='next step'/>" +
-    "    <transition name='nok' to='update'/>" +
-    "    <transition name='reject' to='close'/>" +
-    "  </sub-process>" +
-    "  <state name='next step'/>" +
-    "  <state name='update'/>" +
-    "  <end name='close'/>" +
-    "</process>"; 
-  
-  private static final String MAIN_PROCESS_SUB_EL_ID =
-    "<process name='mainProcess'>" +
-    "  <start>" +
-    "    <transition to='review' />" +
-    "  </start>" +
-    "  <sub-process name='review' sub-process-id='#{dynamic_subprocess}'>" +
-    "    <transition name='ok' to='next step'/>" +
-    "    <transition name='nok' to='update'/>" +
-    "    <transition name='reject' to='close'/>" +
-    "  </sub-process>" +
-    "  <state name='next step'/>" +
-    "  <state name='update'/>" +
-    "  <end name='close'/>" +
-    "</process>"; 
-  
-  private static final String MAIN_PROCESS_SUB_ID =
-    "<process name='mainProcess'>" +
-    "  <start>" +
-    "    <transition to='review' />" +
-    "  </start>" +
-    "  <sub-process name='review' sub-process-id='SubProcessReview-1'>" +
-    "    <transition name='ok' to='next step'/>" +
-    "    <transition name='nok' to='update'/>" +
-    "    <transition name='reject' to='close'/>" +
-    "  </sub-process>" +
-    "  <state name='next step'/>" +
-    "  <state name='update'/>" +
-    "  <end name='close'/>" +
-    "</process>"; 
-  
+    "</process>";
+
   public void testSubProcessOutcomeToState() {
     deployJpdlXmlString(SUB_PROCESS);
     deployJpdlXmlString(MAIN_PROCESS);
-    
+
     ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess");
+
+    assertEquals(2, executionService.createProcessInstanceQuery().list().size());
+
     Task task = taskService.findPersonalTasks("johndoe").get(0);
     taskService.completeTask(task.getId(), "nok");
     assertActivityActive(processInstance.getId(), "update");
-  }
 
-  
-  public void testDynamicSubProcess() {
-    deployJpdlXmlString(SUB_PROCESS);
-    deployJpdlXmlString(MAIN_PROCESS_SUB_EL);
-    
-    Map<String, String> vars = new HashMap<String, String>();
-    vars.put("dynamic_subprocess", "SubProcessReview");
-    ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess",vars);
-    Task task = taskService.findPersonalTasks("johndoe").get(0);
-    taskService.completeTask(task.getId(), "reject");
-    assertProcessInstanceEnded(processInstance); 
+    processInstance = executionService.signalExecutionById(processInstance.getId());
+
+    assertProcessInstanceEnded(processInstance);
+    assertEquals(0, executionService.createProcessInstanceQuery().list().size());
   }
-  
-  public void testDynamicSubProcessNotFound() {
-    String expectedError = "Subprocess 'DOES_NOT_EXIST' could not be found.";
-    deployJpdlXmlString(SUB_PROCESS);
-    deployJpdlXmlString(MAIN_PROCESS_SUB_EL);
-    
-    Map<String, String> vars = new HashMap<String, String>();
-    vars.put("dynamic_subprocess", "DOES_NOT_EXIST");
-    try {
-      ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess",vars);
-      fail("Should not happen, error expected: " + expectedError);
-    } catch (JbpmException je) {
-      assertEquals(expectedError, je.getMessage());
-    }
-  }
-  
-  public void testDynamicSubProcessWrongProperty() {
-    String expectedError = "Subprocess key '#{dynamic_subprocess}' could not be resolved.";
-    deployJpdlXmlString(SUB_PROCESS);
-    deployJpdlXmlString(MAIN_PROCESS_SUB_EL);
-    
-    Map<String, String> vars = new HashMap<String, String>();
-    vars.put("WRONG_PROPERTY", "VALUE_DOES_NOT_MATTER");
-    try {
-      ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess",vars);
-      fail("Should not happen, error expected: " + expectedError);
-    } catch (JbpmException je) {
-      assertEquals(expectedError, je.getMessage());
-    }
-  }
-  
+
   public void testSubProcessOutcomeToEnd() {
     deployJpdlXmlString(SUB_PROCESS);
     deployJpdlXmlString(MAIN_PROCESS);
-    
+
     ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess");
+
+    assertEquals(2, executionService.createProcessInstanceQuery().list().size());
+
     Task task = taskService.findPersonalTasks("johndoe").get(0);
     taskService.completeTask(task.getId(), "reject");
-    assertProcessInstanceEnded(processInstance); 
+    assertProcessInstanceEnded(processInstance);
   }
 
-  
+
   // Test for JBPM-2651
   public void testSubProcessNoWaitStates() {
     deployJpdlXmlString(SUB_PROCESS_NO_WAIT_STATE);
     deployJpdlXmlString(MAIN_PROCESS_NO_WAIT_STATE);
-    
+
     executionService.startProcessInstanceByKey("mainProcess");
-  }
-  
-  public void testDynamicSubProcessWithId() {
-    deployJpdlXmlString(SUB_PROCESS);
-    deployJpdlXmlString(MAIN_PROCESS_SUB_EL_ID);
-    
-    Map<String, String> vars = new HashMap<String, String>();
-    vars.put("dynamic_subprocess", "SubProcessReview-1");
-    ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess",vars);
-    Task task = taskService.findPersonalTasks("johndoe").get(0);
-    taskService.completeTask(task.getId(), "reject");
-    assertProcessInstanceEnded(processInstance); 
-  }
-  
-  public void testSubProcessWithId() {
-    deployJpdlXmlString(SUB_PROCESS);
-    deployJpdlXmlString(MAIN_PROCESS_SUB_ID);
-   
+
     ProcessInstance processInstance = executionService.startProcessInstanceByKey("mainProcess");
-    Task task = taskService.findPersonalTasks("johndoe").get(0);
-    taskService.completeTask(task.getId(), "reject");
-    assertProcessInstanceEnded(processInstance); 
+    assertProcessInstanceEnded(processInstance);
+
+    assertEquals(0, executionService.createProcessInstanceQuery().list().size());
   }
-  
+
 }



More information about the jbpm-commits mailing list