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          // clear old messages
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          // clear old messages
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  }