1
2
3
4
5
6
7
8
9
10 package org.mule.test.integration.routing.outbound;
11
12 import org.mule.api.MuleMessage;
13 import org.mule.module.client.MuleClient;
14 import org.mule.tck.FunctionalTestCase;
15 import org.mule.tck.testmodels.fruit.Apple;
16
17 import java.util.ArrayList;
18 import java.util.List;
19
20 public class MulticasterAsyncTestCase extends FunctionalTestCase
21 {
22 @Override
23 protected String getConfigResources()
24 {
25 return "org/mule/test/integration/routing/outbound/multicaster-async-test.xml";
26 }
27
28 public void testSplitter() throws Exception
29 {
30 MuleClient client = new MuleClient(muleContext);
31 client.dispatch("vm://distributor.queue", new Apple(), null);
32
33 List<Object> results = new ArrayList<Object>(3);
34
35 MuleMessage result = client.request("vm://collector.queue", 5000);
36 assertNotNull(result);
37 results.add(result.getPayload());
38
39 result = client.request("vm://collector.queue", 3000);
40 assertNotNull(result);
41 results.add(result.getPayload());
42
43 result = client.request("vm://collector.queue", 3000);
44 assertNotNull(result);
45 results.add(result.getPayload());
46
47 assertTrue(results.contains("Apple Received in ServiceOne"));
48 assertTrue(results.contains("Apple Received in ServiceTwo"));
49 assertTrue(results.contains("Apple Received in ServiceThree"));
50 }
51
52 }