1 package org.logicblaze.lingo.jms;
2
3 import org.logicblaze.lingo.jms.impl.SingleThreadedRequestor;
4
5 import javax.jms.MessageConsumer;
6 import javax.jms.Session;
7 import javax.jms.TextMessage;
8
9 /***
10 * @author yuri
11 * @version $Revision: 1.2 $
12 */
13 public class JmsSingleThreadedTest extends JmsTestSupport {
14 public JmsSingleThreadedTest() {
15 }
16
17 public void testTimeout() throws Exception {
18 SingleThreadedRequestor requestor = (SingleThreadedRequestor) createRequestor(getDestinationName());
19
20 Session session = createSession();
21 MessageConsumer receiver = session.createConsumer(session.createQueue(getDestinationName()));
22
23
24 while (receiver.receive(1) != null) {
25 ;
26 }
27
28 requestor.oneWay(null, session.createTextMessage("bonson"), 1);
29 Thread.sleep(50);
30 assertNull(receiver.receive(1));
31
32 requestor.oneWay(null, session.createTextMessage("bonson2"), -1);
33 TextMessage message = (TextMessage) receiver.receive(1000);
34 assertNotNull(message);
35 assertEquals("bonson2", message.getText());
36 }
37
38 public void testTimeouUsingPermanentQueue() throws Exception {
39 SingleThreadedRequestor requestor = (SingleThreadedRequestor) createRequestor(getDestinationName(), getDestinationName() + ".ClientInbound");
40
41 Session session = createSession();
42 MessageConsumer receiver = session.createConsumer(session.createQueue(getDestinationName()));
43
44
45 while (receiver.receive(1) != null) {
46 ;
47 }
48
49 requestor.oneWay(null, session.createTextMessage("bonson"), 1);
50 Thread.sleep(50);
51 assertNull(receiver.receive(1));
52
53 requestor.oneWay(null, session.createTextMessage("bonson2"), -1);
54 TextMessage message = (TextMessage) receiver.receive(1000);
55 assertNotNull(message);
56 assertEquals("bonson2", message.getText());
57 }
58 }