Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/XMLMessage.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/XMLMessage.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/XMLMessage.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/XMLMessage.java Mon Aug 18 13:21:02 2008 @@ -19,29 +19,65 @@ package org.apache.synapse.transport.testkit.message; +import org.apache.axiom.om.OMAbstractFactory; import org.apache.axiom.om.OMElement; +import org.apache.axiom.soap.SOAP11Constants; +import org.apache.axiom.soap.SOAP12Constants; +import org.apache.axiom.soap.SOAPEnvelope; +import org.apache.axiom.soap.SOAPFactory; public class XMLMessage { + public enum Type { + SOAP11(SOAP11Constants.SOAP_11_CONTENT_TYPE), + SOAP12(SOAP12Constants.SOAP_12_CONTENT_TYPE), + POX("application/xml"); + + private final String contentType; + + private Type(String contentType) { + this.contentType = contentType; + } + + public String getContentType() { + return contentType; + } + } + private final String contentType; - private final XMLMessageType xmlMessageType; + private final Type type; private final OMElement payload; - public XMLMessage(String contentType, OMElement payload, - XMLMessageType xmlMessageType) { + public XMLMessage(String contentType, OMElement payload, Type type) { this.contentType = contentType; this.payload = payload; - this.xmlMessageType = xmlMessageType; + this.type = type; } public String getContentType() { return contentType; } - public XMLMessageType getXmlMessageType() { - return xmlMessageType; + public Type getType() { + return type; } public OMElement getPayload() { return payload; } + + public OMElement getMessageElement() { + if (type == Type.POX) { + return payload; + } else { + SOAPFactory factory; + if (type == Type.SOAP12) { + factory = OMAbstractFactory.getSOAP12Factory(); + } else { + factory = OMAbstractFactory.getSOAP11Factory(); + } + SOAPEnvelope envelope = factory.getDefaultEnvelope(); + envelope.getBody().addChild(payload); + return envelope; + } + } }
Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/name/NameUtils.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/name/NameUtils.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/name/NameUtils.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/name/NameUtils.java Mon Aug 18 13:21:02 2008 @@ -49,6 +49,8 @@ } if (component instanceof String) { map.put(key, (String)component); + } else if (component instanceof Enum) { + map.put(key, String.valueOf(component)); } else { DisplayName displayName = component.getClass().getAnnotation(DisplayName.class); if (displayName != null) { Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/AsyncEndpointFactory.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/AsyncEndpointFactory.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/AsyncEndpointFactory.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/AsyncEndpointFactory.java Mon Aug 18 13:21:02 2008 @@ -20,6 +20,5 @@ package org.apache.synapse.transport.testkit.server; public interface AsyncEndpointFactory<M> { - Server getServer(); AsyncEndpoint<M> createAsyncEndpoint(String contentType) throws Exception; } Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/AsyncEndpointFactoryAdapter.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/AsyncEndpointFactoryAdapter.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/AsyncEndpointFactoryAdapter.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/AsyncEndpointFactoryAdapter.java Mon Aug 18 13:21:02 2008 @@ -35,10 +35,6 @@ return targetFactory; } - public Server getServer() { - return targetFactory.getServer(); - } - public AsyncEndpoint<M> createAsyncEndpoint(String contentType) throws Exception { final AsyncEndpoint<N> targetEndpoint = targetFactory.createAsyncEndpoint(contentType); final MessageConverter<N,M> converter = this.converter; Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/EndpointFactory.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/EndpointFactory.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/EndpointFactory.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/EndpointFactory.java Mon Aug 18 13:21:02 2008 @@ -20,6 +20,5 @@ package org.apache.synapse.transport.testkit.server; public interface EndpointFactory { - Server getServer(); Endpoint createEchoEndpoint(String contentType) throws Exception; } Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AsyncEndpointImpl.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AsyncEndpointImpl.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AsyncEndpointImpl.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AsyncEndpointImpl.java Mon Aug 18 13:21:02 2008 @@ -22,10 +22,10 @@ import java.util.concurrent.TimeUnit; import org.apache.axis2.description.AxisService; -import org.apache.synapse.transport.testkit.message.MessageData; +import org.apache.synapse.transport.testkit.message.AxisMessage; import org.apache.synapse.transport.testkit.server.AsyncEndpoint; -public class AsyncEndpointImpl extends EndpointImpl implements AsyncEndpoint<MessageData> { +public class AsyncEndpointImpl extends EndpointImpl implements AsyncEndpoint<AxisMessage> { private final MockMessageReceiver messageReceiver; public AsyncEndpointImpl(AxisServer server, AxisService service, MockMessageReceiver messageReceiver) { @@ -33,7 +33,7 @@ this.messageReceiver = messageReceiver; } - public MessageData waitForMessage(int timeout) throws Throwable { + public AxisMessage waitForMessage(int timeout) throws Throwable { return messageReceiver.waitForMessage(timeout, TimeUnit.MILLISECONDS); } } \ No newline at end of file Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisAsyncEndpointFactory.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisAsyncEndpointFactory.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisAsyncEndpointFactory.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisAsyncEndpointFactory.java Mon Aug 18 13:21:02 2008 @@ -25,30 +25,23 @@ import org.apache.axis2.engine.AxisConfiguration; import org.apache.synapse.transport.testkit.TestEnvironment; import org.apache.synapse.transport.testkit.listener.AsyncChannel; -import org.apache.synapse.transport.testkit.message.MessageData; +import org.apache.synapse.transport.testkit.message.AxisMessage; import org.apache.synapse.transport.testkit.server.AsyncEndpoint; import org.apache.synapse.transport.testkit.server.AsyncEndpointFactory; -public class AxisAsyncEndpointFactory implements AsyncEndpointFactory<MessageData> { - private final AxisServer server; +public class AxisAsyncEndpointFactory implements AsyncEndpointFactory<AxisMessage> { private TestEnvironment env; + private AxisServer server; private AsyncChannel channel; - public AxisAsyncEndpointFactory(AxisServer server) { - this.server = server; - } - - public AxisServer getServer() { - return server; - } - @SuppressWarnings("unused") - private void setUp(TestEnvironment env, AsyncChannel channel) { + private void setUp(TestEnvironment env, AxisServer server, AsyncChannel channel) { this.env = env; + this.server = server; this.channel = channel; } - public AsyncEndpoint<MessageData> createAsyncEndpoint(String contentType) throws Exception { + public AsyncEndpoint<AxisMessage> createAsyncEndpoint(String contentType) throws Exception { // Set up a test service with a default operation backed by a mock message // receiver. The service is configured using the parameters specified by the // implementation. Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisEchoEndpointFactory.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisEchoEndpointFactory.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisEchoEndpointFactory.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisEchoEndpointFactory.java Mon Aug 18 13:21:02 2008 @@ -33,21 +33,14 @@ import org.apache.synapse.transport.testkit.server.EndpointFactory; public class AxisEchoEndpointFactory implements EndpointFactory { - private final AxisServer server; private TestEnvironment env; + private AxisServer server; private RequestResponseChannel channel; - public AxisEchoEndpointFactory(AxisServer server) { - this.server = server; - } - - public AxisServer getServer() { - return server; - } - @SuppressWarnings("unused") - private void setUp(TestEnvironment env, RequestResponseChannel channel) { + private void setUp(TestEnvironment env, AxisServer server, RequestResponseChannel channel) { this.env = env; + this.server = server; this.channel = channel; } Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisServer.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisServer.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisServer.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisServer.java Mon Aug 18 13:21:02 2008 @@ -36,17 +36,11 @@ public class AxisServer implements Server { private static AxisServer activeServer; - private final TransportDescriptionFactory tdf; - private TransportListener listener; - UtilsTransportServer server; + private UtilsTransportServer server; - public AxisServer(TransportDescriptionFactory tdf) { - this.tdf = tdf; - } - @SuppressWarnings("unused") - private void setUp(Channel channel) throws Exception { + private void setUp(Channel channel, TransportDescriptionFactory tdf) throws Exception { server = new UtilsTransportServer(); if (activeServer != null) { @@ -95,7 +89,7 @@ return server.getAxisConfiguration(); } - String getEPR(AxisService service) throws AxisFault { + public String getEPR(AxisService service) throws AxisFault { EndpointReference[] endpointReferences = listener.getEPRsForService(service.getName(), "localhost"); return endpointReferences != null && endpointReferences.length > 0 Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/MockMessageReceiver.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/MockMessageReceiver.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/MockMessageReceiver.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/MockMessageReceiver.java Mon Aug 18 13:21:02 2008 @@ -23,34 +23,25 @@ import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.TimeUnit; -import org.apache.axiom.attachments.Attachments; -import org.apache.axiom.soap.SOAPEnvelope; import org.apache.axis2.AxisFault; import org.apache.axis2.context.MessageContext; import org.apache.axis2.engine.MessageReceiver; -//import org.apache.synapse.transport.base.event.TransportError; -//import org.apache.synapse.transport.base.event.TransportErrorListener; -import org.apache.synapse.transport.testkit.message.MessageData; +import org.apache.synapse.transport.testkit.message.AxisMessage; /** * A mock message receiver that puts the message data in a queue. */ public class MockMessageReceiver implements MessageReceiver /*, TransportErrorListener*/ { private interface Event { - MessageData process() throws Throwable; + AxisMessage process() throws Throwable; } private final BlockingQueue<Event> queue = new LinkedBlockingQueue<Event>(); public void receive(MessageContext messageCtx) throws AxisFault { - SOAPEnvelope envelope = messageCtx.getEnvelope(); - envelope.build(); - Attachments attachments = messageCtx.getAttachmentMap(); - // Make sure that all attachments are read - attachments.getAllContentIDs(); - final MessageData messageData = new MessageData(envelope, attachments); + final AxisMessage messageData = new AxisMessage(messageCtx); queue.add(new Event() { - public MessageData process() throws Throwable { + public AxisMessage process() throws Throwable { return messageData; } }); @@ -64,7 +55,7 @@ // }); // } - public MessageData waitForMessage(long timeout, TimeUnit unit) throws Throwable { + public AxisMessage waitForMessage(long timeout, TimeUnit unit) throws Throwable { Event event = queue.poll(timeout, unit); return event == null ? null : event.process(); } Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/TestResource.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/TestResource.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/TestResource.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/TestResource.java Mon Aug 18 13:21:02 2008 @@ -60,9 +60,16 @@ private final Object instance; private final LinkedList<Initializer> initializers = new LinkedList<Initializer>(); private final List<Finalizer> finalizers = new LinkedList<Finalizer>(); + private boolean resolved; - public TestResource(List<TestResource> resources, Object instance) { + public TestResource(Object instance) { this.instance = instance; + } + + public void resolve(List<TestResource> resources) { + if (resolved) { + return; + } Object target = instance; while (target instanceof Adapter) { target = ((Adapter)target).getTarget(); @@ -82,12 +89,14 @@ Class<?> parameterClass = (Class<?>)parameterType; TestResource res = null; for (TestResource resource : resources) { - Object obj = resource.getInstance(); - if (parameterClass.isInstance(obj)) { - if (res != null) { - throw new Error(); + if (resource != this) { + Object obj = resource.getInstance(); + if (parameterClass.isInstance(obj)) { + if (res != null) { + throw new Error(); + } + res = resource; } - res = resource; } } if (res == null) { @@ -103,6 +112,7 @@ } } } + resolved = true; } public Object getInstance() { Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/TransportTestCase.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/TransportTestCase.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/TransportTestCase.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/TransportTestCase.java Mon Aug 18 13:21:02 2008 @@ -26,17 +26,11 @@ import junit.framework.TestCase; -import org.apache.synapse.transport.testkit.TestEnvironment; -import org.apache.synapse.transport.testkit.listener.Channel; import org.apache.synapse.transport.testkit.listener.ContentTypeMode; -import org.apache.synapse.transport.testkit.name.NameComponent; import org.apache.synapse.transport.testkit.name.NameUtils; -import org.apache.synapse.transport.testkit.server.Server; public abstract class TransportTestCase extends TestCase { private final List<TestResource> resources = new LinkedList<TestResource>(); - private final TestEnvironment env; - private final Channel channel; protected final ContentTypeMode contentTypeMode; protected final String contentType; @@ -44,22 +38,19 @@ private boolean manageServer = true; - public TransportTestCase(TestEnvironment env, Channel channel, Server server, ContentTypeMode contentTypeMode, String contentType) { - this.env = env; - this.channel = channel; + public TransportTestCase(ContentTypeMode contentTypeMode, String contentType, Object... resources) { this.contentTypeMode = contentTypeMode; this.contentType = contentType; - if (env != null) { - addResource(env); - } - addResource(channel); - if (server != null) { - addResource(server); + for (Object resource : resources) { + addResource(resource); } } protected void addResource(Object resource) { - resources.add(new TestResource(resources, resource)); + // TODO: we should not allow null resources + if (resource != null) { + resources.add(new TestResource(resource)); + } } public Map<String,String> getNameComponents() { @@ -89,16 +80,6 @@ return testName; } - @NameComponent("env") - public TestEnvironment getEnvironment() { - return env; - } - - @NameComponent("channel") - public Channel getChannel() { - return channel; - } - // public void setServer(ListenerTestServer server){ // this.server = server; // manageServer = false; @@ -107,6 +88,9 @@ @Override protected void setUp() throws Exception { for (TestResource resource : resources) { + resource.resolve(resources); + } + for (TestResource resource : resources) { resource.setUp(); } } Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/BinaryTestCase.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/BinaryTestCase.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/BinaryTestCase.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/BinaryTestCase.java Mon Aug 18 13:21:02 2008 @@ -22,7 +22,8 @@ import java.util.Arrays; import java.util.Random; -import org.apache.synapse.transport.testkit.TestEnvironment; +import javax.mail.internet.ContentType; + import org.apache.synapse.transport.testkit.client.AsyncTestClient; import org.apache.synapse.transport.testkit.listener.AsyncChannel; import org.apache.synapse.transport.testkit.listener.AsyncMessageTestCase; @@ -35,15 +36,15 @@ public class BinaryTestCase extends AsyncMessageTestCase<ByteArrayMessage,ByteArrayMessage> { private static final Random random = new Random(); - public BinaryTestCase(TestEnvironment env, AsyncChannel channel, AsyncTestClient<ByteArrayMessage> client, AsyncEndpointFactory<ByteArrayMessage> endpointFactory, ContentTypeMode contentTypeMode) { - super(env, channel, client, endpointFactory, contentTypeMode, "application/octet-stream", null); + public BinaryTestCase(AsyncChannel channel, AsyncTestClient<ByteArrayMessage> client, AsyncEndpointFactory<ByteArrayMessage> endpointFactory, ContentTypeMode contentTypeMode, Object... resources) { + super(channel, client, endpointFactory, contentTypeMode, "application/octet-stream", null, resources); } @Override protected ByteArrayMessage prepareMessage() throws Exception { byte[] content = new byte[8192]; random.nextBytes(content); - return new ByteArrayMessage("application/octet-stream", content); + return new ByteArrayMessage(new ContentType("application", "octet-stream", null), content); } @Override Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/RESTTestCase.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/RESTTestCase.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/RESTTestCase.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/RESTTestCase.java Mon Aug 18 13:21:02 2008 @@ -25,23 +25,22 @@ import java.util.Set; import org.apache.axiom.om.OMElement; -import org.apache.synapse.transport.testkit.TestEnvironment; import org.apache.synapse.transport.testkit.client.AsyncTestClient; import org.apache.synapse.transport.testkit.listener.AsyncChannel; import org.apache.synapse.transport.testkit.listener.AsyncMessageTestCase; import org.apache.synapse.transport.testkit.listener.ContentTypeMode; -import org.apache.synapse.transport.testkit.message.MessageData; +import org.apache.synapse.transport.testkit.message.AxisMessage; import org.apache.synapse.transport.testkit.message.RESTMessage; import org.apache.synapse.transport.testkit.message.RESTMessage.Parameter; import org.apache.synapse.transport.testkit.name.DisplayName; import org.apache.synapse.transport.testkit.server.AsyncEndpointFactory; @DisplayName("REST") -public class RESTTestCase extends AsyncMessageTestCase<RESTMessage,MessageData> { +public class RESTTestCase extends AsyncMessageTestCase<RESTMessage,AxisMessage> { private final RESTMessage message; - public RESTTestCase(TestEnvironment env, AsyncChannel channel, AsyncTestClient<RESTMessage> client, AsyncEndpointFactory<MessageData> endpointFactory, RESTMessage message) { - super(env, channel, client, endpointFactory, ContentTypeMode.TRANSPORT, null, null); + public RESTTestCase(AsyncChannel channel, AsyncTestClient<RESTMessage> client, AsyncEndpointFactory<AxisMessage> endpointFactory, RESTMessage message, Object... resources) { + super(channel, client, endpointFactory, ContentTypeMode.TRANSPORT, null, null, resources); this.message = message; } @@ -51,7 +50,7 @@ } @Override - protected void checkMessageData(RESTMessage message, MessageData messageData) throws Exception { + protected void checkMessageData(RESTMessage message, AxisMessage messageData) throws Exception { OMElement content = messageData.getEnvelope().getBody().getFirstElement(); Set<Parameter> expected = new HashSet<Parameter>(Arrays.asList(message.getParameters())); for (Iterator<?> it = content.getChildElements(); it.hasNext(); ) { Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/SwATestCase.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/SwATestCase.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/SwATestCase.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/SwATestCase.java Mon Aug 18 13:21:02 2008 @@ -25,6 +25,7 @@ import java.util.Random; import javax.activation.DataHandler; +import javax.mail.internet.ContentType; import javax.xml.namespace.QName; import org.apache.axiom.attachments.Attachments; @@ -38,25 +39,24 @@ import org.apache.axiom.soap.SOAPBody; import org.apache.axiom.soap.SOAPEnvelope; import org.apache.axiom.soap.SOAPFactory; -import org.apache.synapse.transport.testkit.TestEnvironment; import org.apache.synapse.transport.testkit.client.AsyncTestClient; import org.apache.synapse.transport.testkit.listener.AsyncChannel; import org.apache.synapse.transport.testkit.listener.AsyncMessageTestCase; import org.apache.synapse.transport.testkit.listener.ContentTypeMode; +import org.apache.synapse.transport.testkit.message.AxisMessage; import org.apache.synapse.transport.testkit.message.ByteArrayMessage; -import org.apache.synapse.transport.testkit.message.MessageData; import org.apache.synapse.transport.testkit.name.DisplayName; import org.apache.synapse.transport.testkit.server.AsyncEndpointFactory; @DisplayName("AsyncSwA") -public class SwATestCase extends AsyncMessageTestCase<ByteArrayMessage,MessageData> { +public class SwATestCase extends AsyncMessageTestCase<ByteArrayMessage,AxisMessage> { private static final Random random = new Random(); private byte[] attachmentContent; private String contentID; - public SwATestCase(TestEnvironment env, AsyncChannel channel, AsyncTestClient<ByteArrayMessage> client, AsyncEndpointFactory<MessageData> endpointFactory) { - super(env, channel, client, endpointFactory, ContentTypeMode.TRANSPORT, null, null); + public SwATestCase(AsyncChannel channel, AsyncTestClient<ByteArrayMessage> client, AsyncEndpointFactory<AxisMessage> endpointFactory, Object... resources) { + super(channel, client, endpointFactory, ContentTypeMode.TRANSPORT, null, null, resources); } @Override @@ -84,11 +84,11 @@ orgAttachments.addDataHandler(contentID, new DataHandler(new ByteArrayDataSource(attachmentContent, "application/octet-stream"))); ByteArrayOutputStream baos = new ByteArrayOutputStream(); MIMEOutputUtils.writeSOAPWithAttachmentsMessage(writer, baos, orgAttachments, outputFormat); - return new ByteArrayMessage(outputFormat.getContentTypeForSwA(SOAP12Constants.SOAP_12_CONTENT_TYPE), baos.toByteArray()); + return new ByteArrayMessage(new ContentType(outputFormat.getContentTypeForSwA(SOAP12Constants.SOAP_12_CONTENT_TYPE)), baos.toByteArray()); } @Override - protected void checkMessageData(ByteArrayMessage message, MessageData messageData) throws Exception { + protected void checkMessageData(ByteArrayMessage message, AxisMessage messageData) throws Exception { ByteArrayOutputStream baos = new ByteArrayOutputStream(); Attachments attachments = messageData.getAttachments(); DataHandler dataHandler = attachments.getDataHandler(contentID); Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/TextPlainTestCase.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/TextPlainTestCase.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/TextPlainTestCase.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/TextPlainTestCase.java Mon Aug 18 13:21:02 2008 @@ -19,7 +19,6 @@ package org.apache.synapse.transport.testkit.tests.async; -import org.apache.synapse.transport.testkit.TestEnvironment; import org.apache.synapse.transport.testkit.client.AsyncTestClient; import org.apache.synapse.transport.testkit.listener.AsyncChannel; import org.apache.synapse.transport.testkit.listener.AsyncMessageTestCase; @@ -34,8 +33,8 @@ public class TextPlainTestCase extends AsyncMessageTestCase<StringMessage,StringMessage> { private final MessageTestData data; - public TextPlainTestCase(TestEnvironment env, AsyncChannel channel, AsyncTestClient<StringMessage> client, AsyncEndpointFactory<StringMessage> endpointFactory, ContentTypeMode contentTypeMode, MessageTestData data) { - super(env, channel, client, endpointFactory, contentTypeMode, "text/plain; charset=\"" + data.getCharset() + "\"", data.getCharset()); + public TextPlainTestCase(AsyncChannel channel, AsyncTestClient<StringMessage> client, AsyncEndpointFactory<StringMessage> endpointFactory, ContentTypeMode contentTypeMode, MessageTestData data, Object... resources) { + super(channel, client, endpointFactory, contentTypeMode, "text/plain; charset=\"" + data.getCharset() + "\"", data.getCharset(), resources); this.data = data; } Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/XMLAsyncMessageTestCase.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/XMLAsyncMessageTestCase.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/XMLAsyncMessageTestCase.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/XMLAsyncMessageTestCase.java Mon Aug 18 13:21:02 2008 @@ -21,35 +21,34 @@ import javax.xml.namespace.QName; +import org.apache.axiom.om.OMAbstractFactory; import org.apache.axiom.om.OMElement; import org.apache.axiom.om.OMFactory; import org.apache.axiom.soap.SOAPEnvelope; -import org.apache.synapse.transport.testkit.TestEnvironment; import org.apache.synapse.transport.testkit.client.AsyncTestClient; import org.apache.synapse.transport.testkit.listener.AsyncChannel; import org.apache.synapse.transport.testkit.listener.AsyncMessageTestCase; import org.apache.synapse.transport.testkit.listener.ContentTypeMode; import org.apache.synapse.transport.testkit.listener.MessageTestData; -import org.apache.synapse.transport.testkit.message.MessageData; +import org.apache.synapse.transport.testkit.message.AxisMessage; import org.apache.synapse.transport.testkit.message.XMLMessage; -import org.apache.synapse.transport.testkit.message.XMLMessageType; import org.apache.synapse.transport.testkit.name.DisplayName; import org.apache.synapse.transport.testkit.name.NameComponent; import org.apache.synapse.transport.testkit.server.AsyncEndpointFactory; @DisplayName("AsyncXML") -public class XMLAsyncMessageTestCase extends AsyncMessageTestCase<XMLMessage,MessageData> { - private final XMLMessageType xmlMessageType; +public class XMLAsyncMessageTestCase extends AsyncMessageTestCase<XMLMessage,AxisMessage> { + private final XMLMessage.Type xmlMessageType; private final MessageTestData data; - public XMLAsyncMessageTestCase(TestEnvironment env, AsyncChannel channel, AsyncTestClient<XMLMessage> client, AsyncEndpointFactory<MessageData> endpointFactory, XMLMessageType xmlMessageType, ContentTypeMode contentTypeMode, String baseContentType, MessageTestData data) { - super(env, channel, client, endpointFactory, contentTypeMode, baseContentType + "; charset=\"" + data.getCharset() + "\"", data.getCharset()); + public XMLAsyncMessageTestCase(AsyncChannel channel, AsyncTestClient<XMLMessage> client, AsyncEndpointFactory<AxisMessage> endpointFactory, XMLMessage.Type xmlMessageType, ContentTypeMode contentTypeMode, String baseContentType, MessageTestData data, Object... resources) { + super(channel, client, endpointFactory, contentTypeMode, baseContentType + "; charset=\"" + data.getCharset() + "\"", data.getCharset(), resources); this.xmlMessageType = xmlMessageType; this.data = data; } @NameComponent("messageType") - public XMLMessageType getXmlMessageType() { + public XMLMessage.Type getXmlMessageType() { return xmlMessageType; } @@ -60,14 +59,14 @@ @Override protected XMLMessage prepareMessage() throws Exception { - OMFactory factory = xmlMessageType.getOMFactory(); + OMFactory factory = OMAbstractFactory.getOMFactory(); OMElement orgElement = factory.createOMElement(new QName("root")); orgElement.setText(data.getText()); return new XMLMessage(contentType, orgElement, xmlMessageType); } @Override - protected void checkMessageData(XMLMessage message, MessageData messageData) throws Exception { + protected void checkMessageData(XMLMessage message, AxisMessage messageData) throws Exception { SOAPEnvelope envelope = messageData.getEnvelope(); OMElement element = envelope.getBody().getFirstElement(); OMElement orgElement = message.getPayload(); Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/echo/XMLRequestResponseMessageTestCase.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/echo/XMLRequestResponseMessageTestCase.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/echo/XMLRequestResponseMessageTestCase.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/echo/XMLRequestResponseMessageTestCase.java Mon Aug 18 13:21:02 2008 @@ -21,14 +21,15 @@ import javax.xml.namespace.QName; +import org.apache.axiom.om.OMAbstractFactory; import org.apache.axiom.om.OMElement; import org.apache.axiom.om.OMFactory; -import org.apache.synapse.transport.testkit.TestEnvironment; -import org.apache.synapse.transport.testkit.client.XMLRequestResponseTestClient; +import org.apache.synapse.transport.testkit.client.ClientOptions; +import org.apache.synapse.transport.testkit.client.RequestResponseTestClient; import org.apache.synapse.transport.testkit.listener.ContentTypeMode; import org.apache.synapse.transport.testkit.listener.MessageTestData; import org.apache.synapse.transport.testkit.listener.RequestResponseChannel; -import org.apache.synapse.transport.testkit.message.XMLMessageType; +import org.apache.synapse.transport.testkit.message.XMLMessage; import org.apache.synapse.transport.testkit.name.DisplayName; import org.apache.synapse.transport.testkit.name.NameComponent; import org.apache.synapse.transport.testkit.server.Endpoint; @@ -37,29 +38,31 @@ @DisplayName("EchoXML") public class XMLRequestResponseMessageTestCase extends TransportTestCase { - private final XMLRequestResponseTestClient client; + private final RequestResponseTestClient<XMLMessage,XMLMessage> client; private final EndpointFactory endpointFactory; - private final XMLMessageType xmlMessageType; + private final XMLMessage.Type xmlMessageType; private final MessageTestData data; // TODO: realign order of arguments with XMLAsyncMessageTestCase constructor - public XMLRequestResponseMessageTestCase(TestEnvironment env, RequestResponseChannel channel, XMLRequestResponseTestClient client, EndpointFactory endpointFactory, ContentTypeMode contentTypeMode, String contentType, XMLMessageType xmlMessageType, MessageTestData data) { - super(env, channel, endpointFactory.getServer(), contentTypeMode, contentType); + // TODO: maybe we don't need an explicit RequestResponseChannel + public XMLRequestResponseMessageTestCase(RequestResponseChannel channel, RequestResponseTestClient<XMLMessage,XMLMessage> client, EndpointFactory endpointFactory, ContentTypeMode contentTypeMode, String contentType, XMLMessage.Type xmlMessageType, MessageTestData data, Object... resources) { + super(contentTypeMode, contentType, resources); this.client = client; this.endpointFactory = endpointFactory; this.xmlMessageType = xmlMessageType; this.data = data; + addResource(channel); addResource(client); addResource(endpointFactory); } @NameComponent("client") - public XMLRequestResponseTestClient getClient() { + public RequestResponseTestClient<XMLMessage,XMLMessage> getClient() { return client; } @NameComponent("messageType") - public XMLMessageType getXmlMessageType() { + public XMLMessage.Type getXmlMessageType() { return xmlMessageType; } @@ -72,10 +75,10 @@ protected void runTest() throws Throwable { Endpoint endpoint = endpointFactory.createEchoEndpoint(contentTypeMode == ContentTypeMode.SERVICE ? contentType : null); try { - OMFactory factory = xmlMessageType.getOMFactory(); + OMFactory factory = OMAbstractFactory.getOMFactory(); OMElement orgElement = factory.createOMElement(new QName("root")); orgElement.setText(data.getText()); - OMElement element = client.sendMessage(endpoint.getEPR(), contentType, data.getCharset(), xmlMessageType, orgElement); + OMElement element = client.sendMessage(new ClientOptions(endpoint.getEPR(), data.getCharset()), new XMLMessage(contentType, orgElement, xmlMessageType)).getPayload(); assertEquals(orgElement.getQName(), element.getQName()); assertEquals(orgElement.getText(), element.getText()); } finally { Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSMockAsyncEndpoint.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSMockAsyncEndpoint.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSMockAsyncEndpoint.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSMockAsyncEndpoint.java Mon Aug 18 13:21:02 2008 @@ -22,6 +22,8 @@ import java.io.File; import java.io.InputStream; +import javax.mail.internet.ContentType; + import org.apache.commons.io.IOUtils; import org.apache.synapse.transport.testkit.message.ByteArrayMessage; import org.apache.synapse.transport.testkit.server.AsyncEndpoint; @@ -30,9 +32,9 @@ public class VFSMockAsyncEndpoint implements AsyncEndpoint<ByteArrayMessage> { private final VFSFileChannel channel; - private final String contentType; + private final ContentType contentType; - public VFSMockAsyncEndpoint(VFSFileChannel channel, String contentType) { + public VFSMockAsyncEndpoint(VFSFileChannel channel, ContentType contentType) { this.channel = channel; this.contentType = contentType; } Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTransportListenerTest.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTransportListenerTest.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTransportListenerTest.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTransportListenerTest.java Mon Aug 18 13:21:02 2008 @@ -50,20 +50,20 @@ new SimpleTransportDescriptionFactory("vfs", VFSTransportListener.class, VFSTransportSender.class); VFSTestEnvironment env = new VFSTestEnvironment(); - AxisServer server = new AxisServer(tdf); - AxisAsyncEndpointFactory asyncEndpointFactory = new AxisAsyncEndpointFactory(server); + AxisServer server = new AxisServer(); + AxisAsyncEndpointFactory asyncEndpointFactory = new AxisAsyncEndpointFactory(); VFSFileChannel channel = new VFSFileChannel(new File("target/vfs3/req/in").getAbsoluteFile()); VFSClient vfsClient = new VFSClient(); List<AsyncTestClient<XMLMessage>> clients = new LinkedList<AsyncTestClient<XMLMessage>>(); clients.add(adapt(vfsClient, MessageConverter.XML_TO_BYTE)); - clients.add(new AxisAsyncTestClient(tdf)); + clients.add(adapt(new AxisAsyncTestClient(tdf), MessageConverter.XML_TO_AXIS)); for (AsyncTestClient<XMLMessage> client : clients) { - suite.addSOAPTests(env, channel, client, asyncEndpointFactory, ContentTypeMode.SERVICE); - suite.addPOXTests(env, channel, client, asyncEndpointFactory, ContentTypeMode.SERVICE); + suite.addSOAPTests(channel, client, asyncEndpointFactory, ContentTypeMode.SERVICE, env, server, tdf); + suite.addPOXTests(channel, client, asyncEndpointFactory, ContentTypeMode.SERVICE, env, server, tdf); // Since VFS has no Content-Type header, SwA is not supported. } - suite.addTextPlainTests(env, channel, adapt(vfsClient, MessageConverter.STRING_TO_BYTE), adapt(asyncEndpointFactory, MessageConverter.AXIS_TO_STRING), ContentTypeMode.SERVICE); - suite.addBinaryTest(env, channel, vfsClient, adapt(asyncEndpointFactory, MessageConverter.AXIS_TO_BYTE), ContentTypeMode.SERVICE); + suite.addTextPlainTests(channel, adapt(vfsClient, MessageConverter.STRING_TO_BYTE), adapt(asyncEndpointFactory, MessageConverter.AXIS_TO_STRING), ContentTypeMode.SERVICE, env, server, tdf); + suite.addBinaryTest(channel, vfsClient, adapt(asyncEndpointFactory, MessageConverter.AXIS_TO_BYTE), ContentTypeMode.SERVICE, env, server, tdf); return suite; } } Modified: synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTransportSenderTest.java URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTransportSenderTest.java?rev=686863&r1=686862&r2=686863&view=diff ============================================================================== --- synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTransportSenderTest.java (original) +++ synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSTransportSenderTest.java Mon Aug 18 13:21:02 2008 @@ -23,6 +23,8 @@ import java.io.File; +import javax.mail.internet.ContentType; + import junit.framework.TestCase; import junit.framework.TestSuite; @@ -35,7 +37,6 @@ import org.apache.synapse.transport.testkit.message.MessageConverter; import org.apache.synapse.transport.testkit.server.AsyncEndpoint; import org.apache.synapse.transport.testkit.server.AsyncEndpointFactory; -import org.apache.synapse.transport.testkit.server.Server; public class VFSTransportSenderTest extends TestCase { public static TestSuite suite() { @@ -51,10 +52,6 @@ private VFSFileChannel channel; - public Server getServer() { - return null; - } - @SuppressWarnings("unused") private void setUp(VFSFileChannel channel) { this.channel = channel; @@ -63,15 +60,15 @@ public AsyncEndpoint<ByteArrayMessage> createAsyncEndpoint(String contentType) throws Exception { - return new VFSMockAsyncEndpoint(channel, contentType); + return new VFSMockAsyncEndpoint(channel, new ContentType(contentType)); } }; VFSFileChannel channel = new VFSFileChannel(new File("target/vfs3/req/in").getAbsoluteFile()); AxisAsyncTestClient client = new AxisAsyncTestClient(tdf); - suite.addBinaryTest(env, channel, adapt(client, MessageConverter.BINARY_WRAPPER), endpointFactory, ContentTypeMode.SERVICE); - suite.addTextPlainTests(env, channel, adapt(client, MessageConverter.TEXT_WRAPPER), adapt(endpointFactory, MessageConverter.BYTE_TO_STRING), ContentTypeMode.SERVICE); + suite.addBinaryTest(channel, adapt(client, MessageConverter.BINARY_WRAPPER), endpointFactory, ContentTypeMode.SERVICE, env); + suite.addTextPlainTests(channel, adapt(client, MessageConverter.TEXT_WRAPPER), adapt(endpointFactory, MessageConverter.BYTE_TO_STRING), ContentTypeMode.SERVICE, env); return suite; }
