Author: ningjiang
Date: Thu Jul 12 08:49:14 2012
New Revision: 1360581

URL: http://svn.apache.org/viewvc?rev=1360581&view=rev
Log:
CAMEL-5440 Fixed the issue of mock endpoint expectedHeaderReceived

Modified:
    
camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java

Modified: 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
URL: 
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java?rev=1360581&r1=1360580&r2=1360581&view=diff
==============================================================================
--- 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
 (original)
+++ 
camel/trunk/camel-core/src/main/java/org/apache/camel/component/mock/MockEndpoint.java
 Thu Jul 12 08:49:14 2012
@@ -481,32 +481,32 @@ public class MockEndpoint extends Defaul
     public void expectedHeaderReceived(final String name, final Object value) {
         if (expectedHeaderValues == null) {
             expectedHeaderValues = new CaseInsensitiveMap();
-        }
-        expectedHeaderValues.put(name, value);
+            // we just wants to expects to be called once
+            expects(new Runnable() {
+                public void run() {
+                    for (int i = 0; i < getReceivedExchanges().size(); i++) {
+                        Exchange exchange = getReceivedExchange(i);
+                        for (Map.Entry<String, Object> entry : 
expectedHeaderValues.entrySet()) {
+                            String key = entry.getKey();
+                            Object expectedValue = entry.getValue();
+
+                            // we accept that an expectedValue of null also 
means that the header may be absent
+                            if (expectedValue != null) {
+                                assertTrue("Exchange " + i + " has no 
headers", exchange.getIn().hasHeaders());
+                                boolean hasKey = 
exchange.getIn().getHeaders().containsKey(key);
+                                assertTrue("No header with name " + key + " 
found for message: " + i, hasKey);
+                            }
 
-        expects(new Runnable() {
-            public void run() {
-                for (int i = 0; i < getReceivedExchanges().size(); i++) {
-                    Exchange exchange = getReceivedExchange(i);
-                    for (Map.Entry<String, Object> entry : 
expectedHeaderValues.entrySet()) {
-                        String key = entry.getKey();
-                        Object expectedValue = entry.getValue();
+                            Object actualValue = 
exchange.getIn().getHeader(key);
+                            actualValue = extractActualValue(exchange, 
actualValue, expectedValue);
 
-                        // we accept that an expectedValue of null also means 
that the header may be absent
-                        if (expectedValue != null) {
-                            assertTrue("Exchange " + i + " has no headers", 
exchange.getIn().hasHeaders());
-                            boolean hasKey = 
exchange.getIn().getHeaders().containsKey(key);
-                            assertTrue("No header with name " + key + " found 
for message: " + i, hasKey);
+                            assertEquals("Header with name " + key + " for 
message: " + i, expectedValue, actualValue);
                         }
-
-                        Object actualValue = exchange.getIn().getHeader(key);
-                        actualValue = extractActualValue(exchange, 
actualValue, expectedValue);
-
-                        assertEquals("Header with name " + key + " for 
message: " + i, expectedValue, actualValue);
                     }
                 }
-            }
-        });
+            });
+        }
+        expectedHeaderValues.put(name, value);
     }
 
     /**


Reply via email to