1
2
3
4
5
6
7
8
9
10
11 package org.mule.transport.tcp;
12
13 import org.mule.api.MuleMessage;
14 import org.mule.module.client.MuleClient;
15 import org.mule.tck.FunctionalTestCase;
16
17 import java.util.HashMap;
18 import java.util.Map;
19
20 public class TcpFunctionalTestCase extends FunctionalTestCase
21 {
22
23 protected static String TEST_MESSAGE = "Test TCP Request";
24
25 protected String getConfigResources()
26 {
27 return "tcp-functional-test.xml";
28 }
29
30 public void testSend() throws Exception
31 {
32 MuleClient client = new MuleClient();
33 Map props = new HashMap();
34 MuleMessage result = client.send("clientEndpoint", TEST_MESSAGE, props);
35 assertEquals(TEST_MESSAGE + " Received", result.getPayloadAsString());
36 }
37
38 public void testDispatchAndReply() throws Exception
39 {
40 MuleClient client = new MuleClient();
41 Map props = new HashMap();
42 client.dispatch("asyncClientEndpoint", TEST_MESSAGE, props);
43
44 Thread.sleep(100);
45 MuleMessage result = client.request("asyncClientEndpoint", 10000);
46 assertNotNull(result);
47 assertEquals(TEST_MESSAGE + " Received Async", result.getPayloadAsString());
48 }
49
50 public void timeMultipleSend() throws Exception
51 {
52 MuleClient client = new MuleClient();
53 Map props = new HashMap();
54 long now = System.currentTimeMillis();
55 int count = 1000;
56 for (int i = 0; i < count; i++)
57 {
58 MuleMessage result = client.send("clientEndpoint", TEST_MESSAGE, props);
59 assertEquals(TEST_MESSAGE + " Received", result.getPayloadAsString());
60 }
61 long later = System.currentTimeMillis();
62 double speed = count * 1000.0 / (later - now);
63 logger.error(speed + " messages per second");
64 }
65
66 }