[jboss-svn-commits] JBL Code SVN: r9040 - in labs/jbossesb/trunk/product/core/listeners/tests/src/org/jboss/soa/esb/actions: templates and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Jan 27 10:10:49 EST 2007
Author: jplenhart
Date: 2007-01-27 10:10:48 -0500 (Sat, 27 Jan 2007)
New Revision: 9040
Added:
labs/jbossesb/trunk/product/core/listeners/tests/src/org/jboss/soa/esb/actions/templates/
labs/jbossesb/trunk/product/core/listeners/tests/src/org/jboss/soa/esb/actions/templates/SqlRowActionUnitTest.java
Log:
Adding Unit Tests for org.jboss.soa.esb.actions.templates.SqlRowActionUnitTest
Added: labs/jbossesb/trunk/product/core/listeners/tests/src/org/jboss/soa/esb/actions/templates/SqlRowActionUnitTest.java
===================================================================
--- labs/jbossesb/trunk/product/core/listeners/tests/src/org/jboss/soa/esb/actions/templates/SqlRowActionUnitTest.java (rev 0)
+++ labs/jbossesb/trunk/product/core/listeners/tests/src/org/jboss/soa/esb/actions/templates/SqlRowActionUnitTest.java 2007-01-27 15:10:48 UTC (rev 9040)
@@ -0,0 +1,121 @@
+package org.jboss.soa.esb.actions.templates;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import junit.framework.JUnit4TestAdapter;
+import org.apache.log4j.Logger;
+import org.apache.log4j.Priority;
+import org.jboss.soa.esb.actions.AbstractSqlRowAction;
+import org.jboss.soa.esb.actions.ActionProcessingException;
+import org.jboss.soa.esb.common.tests.BaseTest;
+import org.jboss.soa.esb.helpers.KeyValuePair;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.message.format.MessageType;
+
+/**
+ * Testing the AbstractSqlRowActionTest
+ *
+ * @author Jason Lenhart
+ */
+public class SqlRowActionUnitTest extends BaseTest
+{
+
+
+ private Logger logger = Logger.getLogger(this.getClass());
+
+ /**
+ * Process a Message through the process() of AbstractSqlRowAction
+ * Using an Inner Class Implementation of AbstractSqlRowAction
+ */
+ public void testProcessMessage()
+ {
+ // Body Must implement Map in order to have SqlRowAction process
+ Message msg1 = MessageFactory.getInstance().getMessage(MessageType.DEFAULT_TYPE);
+
+ msg1.getBody().add("org.jboss.soa.esb.actions.current.after", new HashMap());
+
+ try
+ {
+ // Instantiate my AbstractSqlRowAction Inner Class implementation and test the concrete method
+ AbstractSqlRowAction sqlRowAction = new AbstractSqlRowActionTestImpl("myaction", new ArrayList());
+ // Should get removed after processing
+ Message msg2 = sqlRowAction.process(msg1);
+ Object obj = msg2.getBody().get("org.jboss.soa.esb.actions.current.after");
+ //Assert that it is no longer within the Body
+ assertNull(obj);
+ }
+ catch (Exception _ex)
+ {
+ logger.log(Priority.ERROR, _ex.getMessage(), _ex);
+ assertTrue(false);
+ }
+ }
+
+
+ public void testProcessIncorrectMessage()
+ {
+ // Body Must implement Map in order to have SqlRowAction process
+ // for this test it will not and we will expect an
+ Message msg1 = MessageFactory.getInstance().getMessage(MessageType.DEFAULT_TYPE);
+
+ msg1.getBody().add("org.jboss.soa.esb.actions.current.after", new Object());
+
+ try
+ {
+ // Instantiate my AbstractSqlRowAction Inner Class implementation and test the concrete method
+ AbstractSqlRowAction sqlRowAction = new AbstractSqlRowActionTestImpl("myaction", new ArrayList());
+ sqlRowAction.process(msg1);
+ assertTrue(false);
+
+ }
+ catch (ActionProcessingException _apex)
+ {
+ assertTrue(true);
+ }
+ catch (Exception _ex)
+ {
+ logger.log(Priority.ERROR, _ex.getMessage(), _ex);
+ assertTrue(false);
+ }
+
+
+ }
+
+
+ public static junit.framework.Test suite()
+ {
+ return new JUnit4TestAdapter(SqlRowActionUnitTest.class);
+ }
+
+
+ private class AbstractSqlRowActionTestImpl extends AbstractSqlRowAction
+ {
+ protected AbstractSqlRowActionTestImpl(String actionName, List<KeyValuePair> properties)
+ throws Exception
+ {
+ super(actionName, properties);
+ }
+
+
+ protected Object process(Map resultSet) throws ActionProcessingException
+ {
+ return null;
+ }
+
+ public Serializable getOkNotification(Message message)
+ {
+ return null;
+ }
+
+ public Serializable getErrorNotification(Message message)
+ {
+ return null;
+ }
+ }
+
+}
More information about the jboss-svn-commits
mailing list