Author: hiranya
Date: Tue Aug  6 01:04:23 2013
New Revision: 1510835

URL: http://svn.apache.org/r1510835
Log:
Adding test cases for default endpoint serialization and message store observers

Added:
    
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/endpoints/DefaultEndpointSerializationTest.java
Modified:
    
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/message/store/InMemoryMessageStoreTest.java

Added: 
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/endpoints/DefaultEndpointSerializationTest.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/endpoints/DefaultEndpointSerializationTest.java?rev=1510835&view=auto
==============================================================================
--- 
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/endpoints/DefaultEndpointSerializationTest.java
 (added)
+++ 
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/config/xml/endpoints/DefaultEndpointSerializationTest.java
 Tue Aug  6 01:04:23 2013
@@ -0,0 +1,94 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.synapse.config.xml.endpoints;
+
+import org.apache.axiom.om.OMElement;
+import org.apache.synapse.config.xml.AbstractTestCase;
+import org.apache.synapse.endpoints.DefaultEndpoint;
+
+public class DefaultEndpointSerializationTest extends AbstractTestCase {
+
+    public void testDefaultEndpointScenarioOne() throws Exception {
+        String inputXML = "<endpoint name=\"ep\" 
xmlns=\"http://ws.apache.org/ns/synapse\";>" +
+                "<default/>" +
+                "</endpoint>" ;
+
+        OMElement inputElement = createOMElement(inputXML);
+        DefaultEndpoint endpoint = (DefaultEndpoint) 
DefaultEndpointFactory.getEndpointFromElement(
+                inputElement,true,null);
+
+        OMElement serializedOut = 
DefaultEndpointSerializer.getElementFromEndpoint(endpoint);
+        assertTrue(compare(serializedOut,inputElement));
+    }
+
+    public void testDefaultEndpointScenarioTwo() throws Exception {
+        String inputXML = "<endpoint name=\"ep\" 
xmlns=\"http://ws.apache.org/ns/synapse\";>" +
+                "<default format=\"soap11\"/>" +
+                "</endpoint>" ;
+
+        OMElement inputElement = createOMElement(inputXML);
+        DefaultEndpoint endpoint = (DefaultEndpoint) 
DefaultEndpointFactory.getEndpointFromElement(
+                inputElement,true,null);
+
+        OMElement serializedOut = 
DefaultEndpointSerializer.getElementFromEndpoint(endpoint);
+        assertTrue(compare(serializedOut,inputElement));
+    }
+
+    public void testDefaultEndpointScenarioThree() throws Exception {
+        String inputXML = "<endpoint name=\"ep\" 
xmlns=\"http://ws.apache.org/ns/synapse\";>" +
+                "<default><enableSec policy=\"foo\"/></default>" +
+                "</endpoint>" ;
+
+        OMElement inputElement = createOMElement(inputXML);
+        DefaultEndpoint endpoint = (DefaultEndpoint) 
DefaultEndpointFactory.getEndpointFromElement(
+                inputElement,true,null);
+
+        OMElement serializedOut = 
DefaultEndpointSerializer.getElementFromEndpoint(endpoint);
+        assertTrue(compare(serializedOut,inputElement));
+    }
+
+    public void testDefaultEndpointScenarioFour() throws Exception {
+        String inputXML = "<endpoint name=\"ep\" 
xmlns=\"http://ws.apache.org/ns/synapse\";>" +
+                
"<default><timeout><duration>10000</duration></timeout></default>" +
+                "</endpoint>" ;
+
+        OMElement inputElement = createOMElement(inputXML);
+        DefaultEndpoint endpoint = (DefaultEndpoint) 
DefaultEndpointFactory.getEndpointFromElement(
+                inputElement,true,null);
+
+        OMElement serializedOut = 
DefaultEndpointSerializer.getElementFromEndpoint(endpoint);
+        assertTrue(compare(serializedOut,inputElement));
+    }
+
+    public void testDefaultEndpointScenarioFive() throws Exception {
+        String inputXML = "<endpoint name=\"ep\" 
xmlns=\"http://ws.apache.org/ns/synapse\";>" +
+                "<default><timeout><duration>10000</duration></timeout>" +
+                "<suspendOnFailure><initialDuration>60000</initialDuration>" +
+                
"<progressionFactor>1.0</progressionFactor></suspendOnFailure></default>" +
+                "</endpoint>" ;
+
+        OMElement inputElement = createOMElement(inputXML);
+        DefaultEndpoint endpoint = (DefaultEndpoint) 
DefaultEndpointFactory.getEndpointFromElement(
+                inputElement,true,null);
+
+        OMElement serializedOut = 
DefaultEndpointSerializer.getElementFromEndpoint(endpoint);
+        assertTrue(compare(serializedOut, inputElement));
+    }
+}

Modified: 
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/message/store/InMemoryMessageStoreTest.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/message/store/InMemoryMessageStoreTest.java?rev=1510835&r1=1510834&r2=1510835&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/message/store/InMemoryMessageStoreTest.java
 (original)
+++ 
synapse/trunk/java/modules/core/src/test/java/org/apache/synapse/message/store/InMemoryMessageStoreTest.java
 Tue Aug  6 01:04:23 2013
@@ -107,6 +107,22 @@ public class InMemoryMessageStoreTest ex
         msg = store.peek();
         assertEquals("BAR", msg.getMessageID());
     }
+
+    public void testStoreObserver() throws Exception {
+        MessageStore store = new InMemoryMessageStore();
+        TestObserver observer = new TestObserver();
+        store.registerObserver(observer);
+
+        for (int i = 0; i < 100; i++) {
+            store.offer(createMessageContext("ID" + i));
+        }
+        assertEquals(100, observer.getCount());
+
+        for (int i = 0; i < 100; i++) {
+            store.poll();
+        }
+        assertEquals(0, observer.getCount());
+    }
     
     private MessageContext createMessageContext(String identifier) throws 
Exception {
         MessageContext msg = 
TestUtils.createLightweightSynapseMessageContext("<test/>");
@@ -119,4 +135,20 @@ public class InMemoryMessageStoreTest ex
             store.offer(createMessageContext("ID" + i));
         }
     }
+
+    private static class TestObserver implements MessageStoreObserver {
+        int counter = 0;
+
+        public void messageAdded(String messageId) {
+            counter++;
+        }
+
+        public void messageRemoved(String messageId) {
+            counter--;
+        }
+
+        public int getCount() {
+            return counter;
+        }
+    }
 }


Reply via email to