[jbpm-commits] JBoss JBPM SVN: r6032 - in jbpm4/trunk/modules: test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms and 1 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Wed Dec 23 08:17:40 EST 2009
Author: tom.baeyens at jboss.com
Date: 2009-12-23 08:17:40 -0500 (Wed, 23 Dec 2009)
New Revision: 6032
Added:
jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/Buzzz.java
jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueExceptionTest.java
jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.exception.process.jpdl.xml
Modified:
jbpm4/trunk/modules/test-base/src/main/java/org/jbpm/test/JbpmTestCase.java
jbpm4/trunk/modules/test-base/src/main/java/org/jbpm/test/JmsExtensions.java
jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueMapMessageTest.java
jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueObjectMessageTest.java
jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueTextMessageTest.java
jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.map.process.jpdl.xml
jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.object.process.jpdl.xml
jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.text.process.jpdl.xml
Log:
JBPM-2695 added jms test with exception that rollsback both process updates and message sending
Modified: jbpm4/trunk/modules/test-base/src/main/java/org/jbpm/test/JbpmTestCase.java
===================================================================
--- jbpm4/trunk/modules/test-base/src/main/java/org/jbpm/test/JbpmTestCase.java 2009-12-23 13:06:30 UTC (rev 6031)
+++ jbpm4/trunk/modules/test-base/src/main/java/org/jbpm/test/JbpmTestCase.java 2009-12-23 13:17:40 UTC (rev 6032)
@@ -118,6 +118,14 @@
return JmsExtensions.consumeMessageFromQueue(connectionFactoryJndiName, queueJndiName, transacted, acknowledgeMode, timeout);
}
+ public static void jmsAssertQueueEmpty(String connectionFactoryJndiName, String queueJndiName) {
+ jmsAssertQueueEmpty(connectionFactoryJndiName, queueJndiName, true, Session.AUTO_ACKNOWLEDGE, 1000);
+ }
+
+ public static void jmsAssertQueueEmpty(String connectionFactoryJndiName, String queueJndiName, boolean transacted, int acknowledgeMode, long timeout) {
+ JmsExtensions.jmsAssertQueueEmpty(connectionFactoryJndiName, queueJndiName, transacted, acknowledgeMode, timeout);
+ }
+
public static void jmsRemoveQueue(String connectionFactoryJndiName, String queueJndiName) {
JmsExtensions.removeQueue(connectionFactoryJndiName, queueJndiName);
}
Modified: jbpm4/trunk/modules/test-base/src/main/java/org/jbpm/test/JmsExtensions.java
===================================================================
--- jbpm4/trunk/modules/test-base/src/main/java/org/jbpm/test/JmsExtensions.java 2009-12-23 13:06:30 UTC (rev 6031)
+++ jbpm4/trunk/modules/test-base/src/main/java/org/jbpm/test/JmsExtensions.java 2009-12-23 13:17:40 UTC (rev 6032)
@@ -34,7 +34,7 @@
import javax.naming.InitialContext;
import javax.naming.NamingException;
-import junit.framework.TestCase;
+import junit.framework.AssertionFailedError;
import org.jbpm.api.JbpmException;
@@ -157,7 +157,7 @@
MessageConsumer messageConsumer = queueSession.createConsumer(queue);
Message message = messageConsumer.receive(timeout);
if (message==null) {
- TestCase.fail("no message on queue "+queueJndiName);
+ throw new AssertionFailedError("no message on queue "+queueJndiName);
}
return message;
@@ -184,4 +184,15 @@
throw new JbpmException("couldn't receive message from queue: "+e.getMessage(), e);
}
}
+
+ public static void jmsAssertQueueEmpty(String connectionFactoryJndiName, String queueJndiName, boolean transacted, int acknowledgeMode, long timeout) {
+ try {
+ consumeMessageFromQueue(connectionFactoryJndiName, queueJndiName, transacted, acknowledgeMode, timeout);
+ } catch (AssertionFailedError e) {
+ if (e.getMessage().startsWith("no message on queue")) {
+ return;
+ }
+ }
+ throw new AssertionFailedError("message available on queue "+queueJndiName);
+ }
}
Added: jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/Buzzz.java
===================================================================
--- jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/Buzzz.java (rev 0)
+++ jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/Buzzz.java 2009-12-23 13:17:40 UTC (rev 6032)
@@ -0,0 +1,38 @@
+/*
+ * 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.jms;
+
+import org.jbpm.api.activity.ActivityBehaviour;
+import org.jbpm.api.activity.ActivityExecution;
+
+
+/**
+ * @author Tom Baeyens
+ */
+public class Buzzz implements ActivityBehaviour {
+
+ private static final long serialVersionUID = 1L;
+
+ public void execute(ActivityExecution execution) throws Exception {
+ throw new RuntimeException("buzzz");
+ }
+}
Property changes on: jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/Buzzz.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueExceptionTest.java
===================================================================
--- jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueExceptionTest.java (rev 0)
+++ jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueExceptionTest.java 2009-12-23 13:17:40 UTC (rev 6032)
@@ -0,0 +1,60 @@
+/*
+ * 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.jms;
+
+import junit.framework.Test;
+
+import org.apache.cactus.ServletTestSuite;
+import org.jbpm.test.JbpmTestCase;
+
+
+/**
+ * @author Tom Baeyens
+ */
+public class QueueExceptionTest extends JbpmTestCase {
+
+ public static Test suite() {
+ ServletTestSuite servletTestSuite = new ServletTestSuite();
+ servletTestSuite.addTestSuite(QueueTextMessageTest.class);
+ return servletTestSuite;
+ }
+
+ protected void setUp() throws Exception {
+ super.setUp();
+ registerDeployment(repositoryService.createDeployment()
+ .addResourceFromClasspath("org/jbpm/test/jms/queue.text.process.jpdl.xml")
+ .deploy());
+ }
+
+ public void testQueueMessage() throws Exception {
+ try {
+ executionService.startProcessInstanceByKey("JmsQueueException");
+ fail("expected exception");
+ } catch (Exception e) {
+ // OK
+ }
+
+ jmsAssertQueueEmpty("java:JmsXA", "queue/jbpm-test-queue");
+
+ assertEquals(0, executionService.createProcessInstanceQuery().list().size());
+ }
+}
Property changes on: jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueExceptionTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueMapMessageTest.java
===================================================================
--- jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueMapMessageTest.java 2009-12-23 13:06:30 UTC (rev 6031)
+++ jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueMapMessageTest.java 2009-12-23 13:17:40 UTC (rev 6032)
@@ -43,7 +43,7 @@
}
public void testJmsText() throws Exception {
- executionService.startProcessInstanceByKey("JMS_map_queue");
+ executionService.startProcessInstanceByKey("JmsQueueMap");
MapMessage mapMessage = (MapMessage) jmsConsumeMessageFromQueue("java:JmsXA", "queue/jbpm-test-queue");
assertTrue(mapMessage.itemExists("x"));
assertEquals("foo", mapMessage.getObject("x"));
Modified: jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueObjectMessageTest.java
===================================================================
--- jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueObjectMessageTest.java 2009-12-23 13:06:30 UTC (rev 6031)
+++ jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueObjectMessageTest.java 2009-12-23 13:17:40 UTC (rev 6032)
@@ -50,7 +50,7 @@
public void testQueueMessage() throws Exception {
Map<String, Object> variables = new HashMap<String, Object>();
variables.put("object", "this is the object");
- executionService.startProcessInstanceByKey("JMS_object_queue", variables);
+ executionService.startProcessInstanceByKey("JmsQueueObject", variables);
ObjectMessage objectMessage = (ObjectMessage) jmsConsumeMessageFromQueue("java:JmsXA", "queue/jbpm-test-queue");
assertEquals("this is the object", objectMessage.getObject());
}
Modified: jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueTextMessageTest.java
===================================================================
--- jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueTextMessageTest.java 2009-12-23 13:06:30 UTC (rev 6031)
+++ jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/java/org/jbpm/test/jms/QueueTextMessageTest.java 2009-12-23 13:17:40 UTC (rev 6032)
@@ -44,7 +44,7 @@
}
public void testQueueMessage() throws Exception {
- executionService.startProcessInstanceByKey("JMS_text_queue");
+ executionService.startProcessInstanceByKey("JmsQueueText");
TextMessage textMessage = (TextMessage) jmsConsumeMessageFromQueue("java:JmsXA", "queue/jbpm-test-queue");
assertEquals("This is the body", textMessage.getText());
}
Added: jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.exception.process.jpdl.xml
===================================================================
--- jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.exception.process.jpdl.xml (rev 0)
+++ jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.exception.process.jpdl.xml 2009-12-23 13:17:40 UTC (rev 6032)
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<process name="JmsQueueException">
+
+ <start g="20,20,48,48">
+ <transition to="send message" />
+ </start>
+
+ <jms name="send message"
+ connection-factory="java:JmsXA"
+ destination="queue/jbpm-test-queue"
+ g="96,16,83,52">
+ <text>This is the body</text>
+ <transition to="buzzz" />
+ </jms>
+
+ <custom name="buzzz"
+ class="org.jbpm.test.jms.Buzzz"
+ g="352,17,88,52"/>
+
+</process>
Property changes on: jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.exception.process.jpdl.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified: jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.map.process.jpdl.xml
===================================================================
--- jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.map.process.jpdl.xml 2009-12-23 13:06:30 UTC (rev 6031)
+++ jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.map.process.jpdl.xml 2009-12-23 13:17:40 UTC (rev 6032)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<process name="JMS_map_queue">
+<process name="JmsQueueMap">
<start g="20,20,48,48">
<transition to="send message" />
Modified: jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.object.process.jpdl.xml
===================================================================
--- jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.object.process.jpdl.xml 2009-12-23 13:06:30 UTC (rev 6031)
+++ jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.object.process.jpdl.xml 2009-12-23 13:17:40 UTC (rev 6032)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<process name="JMS_object_queue">
+<process name="JmsQueueObject">
<start g="20,20,48,48">
<transition to="send message" />
Modified: jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.text.process.jpdl.xml
===================================================================
--- jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.text.process.jpdl.xml 2009-12-23 13:06:30 UTC (rev 6031)
+++ jbpm4/trunk/modules/test-enterprise/test-enterprise-suite/src/test/resources/org/jbpm/test/jms/queue.text.process.jpdl.xml 2009-12-23 13:17:40 UTC (rev 6032)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<process name="JMS_text_queue">
+<process name="JmsQueueText">
<start g="20,20,48,48">
<transition to="send message" />
More information about the jbpm-commits
mailing list