[jboss-svn-commits] JBL Code SVN: r24689 - labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Jan 13 18:29:07 EST 2009


Author: tfennelly
Date: 2009-01-13 18:29:07 -0500 (Tue, 13 Jan 2009)
New Revision: 24689

Removed:
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault/FaultProcessorAction.java
Modified:
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault/JBESB-2227-config-01.xml
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault/JBESB_2227_UnitTest.java
Log:
https://jira.jboss.org/jira/browse/JBESB-2227: Fixed bogus test.

Deleted: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault/FaultProcessorAction.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault/FaultProcessorAction.java	2009-01-13 23:28:15 UTC (rev 24688)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault/FaultProcessorAction.java	2009-01-13 23:29:07 UTC (rev 24689)
@@ -1,44 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * 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,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- *
- * (C) 2005-2008, JBoss Inc.
- */
-package org.jboss.soa.esb.message.fault;
-
-import org.jboss.soa.esb.actions.AbstractActionPipelineProcessor;
-import org.jboss.soa.esb.actions.ActionProcessingException;
-import org.jboss.soa.esb.message.Message;
-import org.jboss.soa.esb.helpers.ConfigTree;
-
-import java.util.List;
-import java.util.ArrayList;
-
-/**
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class FaultProcessorAction extends AbstractActionPipelineProcessor {
-
-    public static List<Message> faultMessages = new ArrayList<Message>();
-
-    public FaultProcessorAction(ConfigTree config) {
-    }
-
-    public Message process(Message message) throws ActionProcessingException {
-        faultMessages.add(message);
-        return message;
-    }
-}

Modified: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault/JBESB-2227-config-01.xml
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault/JBESB-2227-config-01.xml	2009-01-13 23:28:15 UTC (rev 24688)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault/JBESB-2227-config-01.xml	2009-01-13 23:29:07 UTC (rev 24689)
@@ -7,12 +7,6 @@
                 <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
             </actions>			
         </service>
-
-        <service category="ServiceCat" name="FaultService" description="The Fault Service">
-            <actions mep="OneWay">
-                <action name="action" class="org.jboss.soa.esb.message.fault.FaultProcessorAction" />
-            </actions>
-        </service>
     </services>
 
 </jbossesb>
\ No newline at end of file

Modified: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault/JBESB_2227_UnitTest.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault/JBESB_2227_UnitTest.java	2009-01-13 23:28:15 UTC (rev 24688)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/message/fault/JBESB_2227_UnitTest.java	2009-01-13 23:29:07 UTC (rev 24689)
@@ -29,6 +29,7 @@
 import org.jboss.soa.esb.message.format.MessageFactory;
 import org.jboss.soa.esb.addressing.eprs.LogicalEPR;
 import org.jboss.soa.esb.actions.ActionProcessingException;
+import org.jboss.soa.esb.listeners.message.errors.Factory;
 
 /**
  * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
@@ -51,36 +52,33 @@
             public void test() throws Exception {
                 ServiceInvoker invoker = new ServiceInvoker("ServiceCat", "CallService");
                 Message message = MessageFactory.getInstance().getMessage();
+                ActionProcessingException exception = new ActionProcessingException("Exception!!!");
 
-                FaultProcessorAction.faultMessages.clear();
-                MockAction.exception = new ActionProcessingException("Exception in Service Action!!!");
+                message.getHeader().getCall().setFrom(new LogicalEPR("A", "B"));
+                Message faultMessage = Factory.createErrorMessage(Factory.UNEXPECTED_ERROR, message, exception);
 
-                message.getBody().add("Hi there!");
-                message.getHeader().getCall().setFaultTo(new LogicalEPR("ServiceCat", "FaultService"));
-                invoker.deliverAsync(message);
+                // Should not get a MessageDeliverException...
+                invoker.deliverAsync(faultMessage);
 
-                waitForFault(message);
-
-                Message faultMessage = FaultProcessorAction.faultMessages.get(0);
-                assertTrue(Type.isFaultMessage(faultMessage));
-                assertEquals("org.jboss.soa.esb.actions.ActionProcessingException: Exception in Service Action!!!", faultMessage.getFault().getReason());
+                // Mock action should have received faultMessage...
+                waitForMockSet(faultMessage);
+                assertTrue("Message equality", checkMessageEquality(faultMessage, MockAction.message));
             }
         }.setServiceConfig("JBESB-2227-config-01.xml");
 
         testRunner.run();
     }
 
-    private void waitForFault(Message message) {
+
+    private void waitForMockSet(Message message) {
         long start = System.currentTimeMillis();
 
         while(System.currentTimeMillis() - start < 5000) {
-            if(!FaultProcessorAction.faultMessages.isEmpty()) {
+            if(checkMessageEquality(message, MockAction.message)) {
                 return;
             }
             sleep(50);
         }
-
-        fail("Timed out waiting on fault message!!");
     }
 
     private static void sleep(long millis) {
@@ -90,4 +88,12 @@
             fail("Unexpected InterruptedException exception.");
         }
     }
+
+    private static boolean checkMessageEquality(final Message expected, final Message actual) {
+        return (actual != null) && (expected.getAttachment().equals(actual.getAttachment())) &&
+            (expected.getBody().equals(actual.getBody())) &&
+            (expected.getFault().equals(actual.getFault())) &&
+            (expected.getProperties().equals(actual.getProperties())) &&
+            (expected.getType().equals(actual.getType())) ;
+    }
 }




More information about the jboss-svn-commits mailing list