View Javadoc

1   /*
2    * $Id: MuleClientTestCase.java 22419 2011-07-15 03:41:06Z dirk.olmes $
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.client;
12  
13  
14  import org.mule.api.MuleMessage;
15  import org.mule.module.client.MuleClient;
16  import org.mule.tck.junit4.FunctionalTestCase;
17  
18  import org.junit.Test;
19  
20  import static org.junit.Assert.assertEquals;
21  import static org.junit.Assert.assertNotNull;
22  
23  public class MuleClientTestCase extends FunctionalTestCase
24  {
25  
26      @Override
27      protected String getConfigResources()
28      {
29          return "org/mule/test/integration/client/test-client-mule-config.xml";
30      }
31  
32      @Test
33      public void testClientSendDirect() throws Exception
34      {
35          MuleClient client = new MuleClient(muleContext);
36  
37          MuleMessage message = client.sendDirect("TestReceiverUMO", null, "Test Client Send message", null);
38          assertNotNull(message);
39          assertEquals("Test Client Send message Received", message.getPayload());
40      }
41  
42      @Test
43      public void testClientDispatchDirect() throws Exception
44      {
45          MuleClient client = new MuleClient(muleContext);
46  
47          client.dispatchDirect("TestReceiverUMO", "Test Client dispatch message", null);
48      }
49  
50      @Test
51      public void testClientSendGlobalEndpoint() throws Exception
52      {
53          MuleClient client = new MuleClient(muleContext);
54  
55          MuleMessage message = client.send("vmEndpoint", "Test Client Send message", null);
56          assertNotNull(message);
57          assertEquals("Test Client Send message Received", message.getPayload());
58      }
59  
60      @Test
61      public void testClientSend() throws Exception
62      {
63          MuleClient client = new MuleClient(muleContext);
64  
65          MuleMessage message = client.send(getDispatchUrl(), "Test Client Send message", null);
66          assertNotNull(message);
67          assertEquals("Test Client Send message Received", message.getPayload());
68      }
69  
70      @Test
71      public void testClientMultiSend() throws Exception
72      {
73          MuleClient client = new MuleClient(muleContext);
74  
75          for (int i = 0; i < 100; i++)
76          {
77              MuleMessage message = client.send(getDispatchUrl(), "Test Client Send message " + i, null);
78              assertNotNull(message);
79              assertEquals("Test Client Send message " + i + " Received", message.getPayload());
80          }
81      }
82  
83      @Test
84      public void testClientMultidispatch() throws Exception
85      {
86          MuleClient client = new MuleClient(muleContext);
87  
88          int i = 0;
89          // to init
90          client.dispatch(getDispatchUrl(), "Test Client Send message " + i, null);
91          long start = System.currentTimeMillis();
92          for (i = 0; i < 100; i++)
93          {
94              client.dispatch(getDispatchUrl(), "Test Client Send message " + i, null);
95          }
96          long time = System.currentTimeMillis() - start;
97          logger.debug(i + " took " + time + "ms to process");
98          Thread.sleep(1000);
99      }
100 
101     public String getDispatchUrl()
102     {
103         return "vm://test.queue";
104     }
105 }