1
2
3
4
5
6
7 package org.mule.test.integration.transaction;
8
9 import org.mule.module.client.MuleClient;
10 import org.mule.tck.junit4.FunctionalTestCase;
11
12 import org.junit.Test;
13
14 import static org.junit.Assert.assertNotNull;
15 import static org.junit.Assert.assertNull;
16
17 public class OutboundTransactionsTestCase extends FunctionalTestCase
18 {
19
20 private static final int TIMEOUT = 2000;
21
22 @Override
23 protected String getConfigResources()
24 {
25 return "org/mule/test/integration/transaction/outbound-transactions.xml";
26 }
27
28 @Test
29 public void testOutboundRouterTransactions() throws Exception
30 {
31 MuleClient client = new MuleClient(muleContext);
32
33 while (client.request("jms://my.queue1", TIMEOUT) != null)
34 {
35
36 }
37
38 while (client.request("jms://my.queue2", TIMEOUT) != null)
39 {
40
41 }
42
43 client.sendNoReceive("vm://component1", "test", null);
44
45 assertNotNull(client.request("jms://my.queue1", TIMEOUT));
46 assertNotNull(client.request("jms://my.queue2", TIMEOUT));
47 assertNull(client.request("jms://my.queue1", TIMEOUT));
48 assertNull(client.request("jms://my.queue2", TIMEOUT));
49 }
50
51 @Test
52 public void testOutboundRouterTransactions2() throws Exception
53 {
54 MuleClient client = new MuleClient(muleContext);
55
56 while (client.request("jms://my.queue3", TIMEOUT) != null)
57 {
58
59 }
60
61 while (client.request("jms://my.queue4", TIMEOUT) != null)
62 {
63
64 }
65
66 client.sendNoReceive("jms://component2", "test", null);
67
68 assertNotNull(client.request("jms://my.queue3", TIMEOUT));
69 assertNotNull(client.request("jms://my.queue4", TIMEOUT));
70 assertNull(client.request("jms://my.queue3", TIMEOUT));
71 assertNull(client.request("jms://my.queue4", TIMEOUT));
72 }
73
74 }