View Javadoc

1   /*
2    * $Id: EndpointMessageProcessorsTestCase.java 19191 2010-08-25 21:05:23Z tcarlson $
3    * --------------------------------------------------------------------------------------
4    * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
5    *
6    * The software in this package is published under the terms of the CPAL v1.0
7    * license, a copy of which has been included with this distribution in the
8    * LICENSE.txt file.
9    */
10  
11  package org.mule.test.integration.endpoints;
12  
13  import org.mule.api.MuleMessage;
14  import org.mule.module.client.MuleClient;
15  import org.mule.tck.FunctionalTestCase;
16  
17  public class EndpointMessageProcessorsTestCase extends FunctionalTestCase
18  {
19      @Override
20      protected String getConfigResources()
21      {
22          return "org/mule/test/integration/endpoints/endpoint-message-processors.xml";
23      }
24  
25      public void testSynchronousOutbound() throws Exception
26      {
27          MuleClient client = new MuleClient(muleContext);
28          
29          MuleMessage response = client.send("vm://in1", "input", null);
30          assertNotNull(response);
31          assertEquals("input:A:B:service1:E:F:service2:G:H:C:D", response.getPayload());
32      }
33  
34      public void testAsynchronousOutbound() throws Exception
35      {
36          MuleClient client = new MuleClient(muleContext);
37          
38          MuleMessage response = client.send("vm://in2", "input", null);
39          assertNotNull(response);
40          assertEquals("input:A:B:service1:C:D", response.getPayload());
41  
42          response = client.request("vm://out2", 1000);
43          assertNotNull(response);
44          assertEquals("input:A:B:service1:E:F", response.getPayload());
45      }
46  
47      public void testLegacyAttributes() throws Exception
48      {
49          MuleClient client = new MuleClient(muleContext);
50          
51          MuleMessage response = client.send("vm://in3", "input", null);
52          assertNotNull(response);
53          assertEquals("input:A:B:service1:E:F:service2:G:H:C:D", response.getPayload());
54      }
55  
56      public void testRouters() throws Exception
57      {
58          MuleClient client = new MuleClient(muleContext);
59          
60          client.dispatch("vm://in4", "input1,input2,input3", null);
61  
62          MuleMessage response = client.request("vm://wiretap1", 1000);
63          assertNotNull(response);
64          assertEquals("input1,input2,input3 (tapped)", response.getPayload());
65  
66          response = client.request("vm://wiretap2", 1000);
67          assertNotNull(response);
68          assertTrue(response.getPayloadAsString().startsWith("input"));
69          assertTrue(response.getPayloadAsString().endsWith(":A:B:service1 (tapped)"));
70          response = client.request("vm://wiretap2", 1000);
71          assertNotNull(response);
72          assertTrue(response.getPayloadAsString().startsWith("input"));
73          assertTrue(response.getPayloadAsString().endsWith(":A:B:service1 (tapped)"));
74          response = client.request("vm://wiretap2", 1000);
75          assertNotNull(response);
76          assertTrue(response.getPayloadAsString().startsWith("input"));
77          assertTrue(response.getPayloadAsString().endsWith(":A:B:service1 (tapped)"));
78          response = client.request("vm://wiretap2", 1000);
79          assertNull(response);
80  
81          response = client.request("vm://out4", 1000);
82          assertNotNull(response);
83          assertTrue(response.getPayloadAsString().startsWith("input"));
84          assertTrue(response.getPayloadAsString().endsWith(":A:B:service1:E:F"));
85          response = client.request("vm://out4", 1000);
86          assertNotNull(response);
87          assertTrue(response.getPayloadAsString().startsWith("input"));
88          assertTrue(response.getPayloadAsString().endsWith(":A:B:service1:E:F"));
89          response = client.request("vm://out4", 1000);
90          assertNotNull(response);
91          assertTrue(response.getPayloadAsString().startsWith("input"));
92          assertTrue(response.getPayloadAsString().endsWith(":A:B:service1:E:F"));
93          response = client.request("vm://out4", 1000);
94          assertNull(response);
95      }
96  }