public void testReceiveOnTopic() throws Exception
{
if (log.isTraceEnabled()) log.trace("testReceiveOnTopic");
consumerConnection.start();
final Message m1 = producerSession.createMessage();
new Thread(new Runnable()
{
public void run()
{
try
{
// this is needed to make sure the main thread has enough time to block
Thread.sleep(1000);
topicProducer.send(m1);
}
catch(Exception e)
{
log.error(e);
}
}
}, "Producer").start();
Message m2 = topicConsumer.receive(3000);
if (log.isTraceEnabled()) log.trace("m1:" + m1 + ", m2:" + m2) ;
assertEquals(m1.getJMSMessageID(), m2.getJMSMessageID());
}