1
2
3
4
5
6
7
8
9
10
11 package org.mule.providers.tcp.integration;
12
13 import org.mule.extras.client.MuleClient;
14 import org.mule.impl.MuleMessage;
15 import org.mule.tck.FunctionalTestCase;
16 import org.mule.umo.UMOMessage;
17
18
19
20
21 public class MuleMessageProtocolChunkingTestCase extends FunctionalTestCase
22 {
23 private static int messages = 2;
24 private static int messagelength = 10;
25
26 public void testChunking() throws Exception
27 {
28
29 String message = "";
30 for (int i = 0; i < messagelength; i++)
31 {
32 for (int j = 0; j < 10; j++)
33 message += i;
34 }
35
36 sendString(message);
37 }
38
39 public void testHugeChunk() throws Exception
40 {
41 StringBuffer message = new StringBuffer();
42
43 for (int i = 1000; i < 2000; i++)
44 {
45 message.append(i);
46 }
47 sendString(message.toString());
48 }
49
50 public void testCustomObject() throws Exception
51 {
52 MuleClient client = new MuleClient();
53 StringBuffer sBuffer = new StringBuffer();
54
55 for (int i = 10000; i < 20000; i++)
56 {
57 sBuffer.append(i);
58 }
59 MessageObject message = new MessageObject(1, sBuffer.toString(), true);
60
61 for (int i = 0; i < messages; i++)
62 {
63 client.dispatch("vm://in", new MuleMessage(message));
64 }
65
66 for (int i = 0; i < messages; i++)
67 {
68 UMOMessage msg = client.receive("vm://out", 30000);
69 assertTrue(msg.getPayload() instanceof MessageObject);
70 MessageObject received = (MessageObject)msg.getPayload();
71 assertEquals(message.s, received.s);
72 assertEquals(1, received.i);
73 assertEquals(true, received.b);
74 }
75 }
76
77 private void sendString(String message) throws Exception
78 {
79 MuleClient client = new MuleClient();
80
81 for (int i = 0; i < messages; i++)
82 {
83 client.dispatch("vm://in", new MuleMessage(message));
84 }
85 for (int i = 0; i < messages; i++)
86 {
87 UMOMessage msg = client.receive("vm://out", 30000);
88 assertEquals(message, new String((byte[])msg.getPayload()));
89 }
90 }
91
92 protected String getConfigResources()
93 {
94 return "MuleMessageProtocol-mule-config.xml";
95 }
96
97 }