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