1
2
3
4
5
6
7
8
9
10
11 package org.mule.test.integration.routing.inbound;
12
13 import org.mule.DefaultMuleMessage;
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
24 public class InboundRouterSyncAsyncClientTestCase extends FunctionalTestCase
25 {
26
27 @Override
28 protected String getConfigResources()
29 {
30 return "org/mule/test/integration/routing/inbound/inbound-router-sync-async-client-test.xml";
31 }
32
33 @Test
34 public void testSync() throws Exception
35 {
36 MuleClient client = new MuleClient(muleContext);
37 DefaultMuleMessage message = new DefaultMuleMessage("testSync", muleContext);
38 message.setOutboundProperty("messageType", "sync");
39 MuleMessage result = client.send("vm://singleSyncAsyncEntry", message);
40 assertEquals("testSync OK", result.getPayload());
41 }
42
43 @Test
44 public void testAsync() throws Exception
45 {
46 MuleClient client = new MuleClient(muleContext);
47 DefaultMuleMessage messsage = new DefaultMuleMessage("testAsync", muleContext);
48 messsage.setOutboundProperty("messageType", "async");
49 client.dispatch("vm://singleSyncAsyncEntry", messsage);
50
51 MuleMessage result = client.request("vm://asyncResponse", 5000);
52 assertNotNull(result);
53 assertEquals("testAsync's Response sent to asyncResponse", result.getPayload());
54 }
55
56 }