@Test public void processAndReplyWithDefaultSendTo() throws JMSException { MessagingMessageListenerAdapter listener = createDefaultInstance(String.class); processAndReplyWithSendTo(listener, "defaultReply", false); assertDefaultListenerMethodInvocation(); }
@Test public void resolveConvertedPayload() throws JMSException { MessagingMessageListenerAdapter listener = createDefaultInstance(Integer.class); Session session = mock(Session.class); listener.onMessage(createSimpleJmsTextMessage("33"), session); assertDefaultListenerMethodInvocation(); }
@Test public void resolveMessageAndSession() throws JMSException { MessagingMessageListenerAdapter listener = createDefaultInstance(javax.jms.Message.class, Session.class); Session session = mock(Session.class); listener.onMessage(createSimpleJmsTextMessage("test"), session); assertDefaultListenerMethodInvocation(); }
@Test public void resolveGenericMessage() throws JMSException { MessagingMessageListenerAdapter listener = createDefaultInstance(Message.class); Session session = mock(Session.class); listener.onMessage(createSimpleJmsTextMessage("test"), session); assertDefaultListenerMethodInvocation(); }
@Test public void resolveObjectPayload() throws JMSException { MessagingMessageListenerAdapter listener = createDefaultInstance(MyBean.class); MyBean myBean = new MyBean(); myBean.name = "myBean name"; Session session = mock(Session.class); ObjectMessage message = mock(ObjectMessage.class); given(message.getObject()).willReturn(myBean); listener.onMessage(message, session); assertDefaultListenerMethodInvocation(); }
@Test public void resolveCustomHeaderNameAndPayload() throws JMSException { MessagingMessageListenerAdapter listener = createDefaultInstance(String.class, int.class); Session session = mock(Session.class); StubTextMessage message = createSimpleJmsTextMessage("my payload"); message.setIntProperty("myCounter", 24); listener.onMessage(message, session); assertDefaultListenerMethodInvocation(); }
@Test public void resolveCustomHeaderNameAndPayloadWithHeaderNameSet() throws JMSException { MessagingMessageListenerAdapter listener = createDefaultInstance(String.class, int.class); Session session = mock(Session.class); StubTextMessage message = createSimpleJmsTextMessage("my payload"); message.setIntProperty("myCounter", 24); listener.onMessage(message, session); assertDefaultListenerMethodInvocation(); }
@Test public void resolveHeaderAndPayload() throws JMSException { MessagingMessageListenerAdapter listener = createDefaultInstance(String.class, int.class); Session session = mock(Session.class); StubTextMessage message = createSimpleJmsTextMessage("my payload"); message.setIntProperty("myCounter", 55); listener.onMessage(message, session); assertDefaultListenerMethodInvocation(); }
@Test public void resolveMessageHeaders() throws JMSException { MessagingMessageListenerAdapter listener = createDefaultInstance(MessageHeaders.class); Session session = mock(Session.class); StubTextMessage message = createSimpleJmsTextMessage("my payload"); message.setLongProperty("customLong", 4567L); message.setJMSType("myMessageType"); listener.onMessage(message, session); assertDefaultListenerMethodInvocation(); }
@Test public void resolveJmsMessageHeaderAccessor() throws JMSException { MessagingMessageListenerAdapter listener = createDefaultInstance(JmsMessageHeaderAccessor.class); Session session = mock(Session.class); StubTextMessage message = createSimpleJmsTextMessage("my payload"); message.setBooleanProperty("customBoolean", true); message.setJMSPriority(9); listener.onMessage(message, session); assertDefaultListenerMethodInvocation(); }
@Test public void resolveHeaders() throws JMSException { MessagingMessageListenerAdapter listener = createDefaultInstance(String.class, Map.class); Session session = mock(Session.class); StubTextMessage message = createSimpleJmsTextMessage("my payload"); message.setIntProperty("customInt", 1234); message.setJMSMessageID("abcd-1234"); listener.onMessage(message, session); assertDefaultListenerMethodInvocation(); }
@Test public void processAndReply() throws JMSException { MessagingMessageListenerAdapter listener = createDefaultInstance(String.class); String body = "echo text"; String correlationId = "link-1234"; Destination replyDestination = new Destination() {}; TextMessage reply = mock(TextMessage.class); QueueSender queueSender = mock(QueueSender.class); Session session = mock(Session.class); given(session.createTextMessage(body)).willReturn(reply); given(session.createProducer(replyDestination)).willReturn(queueSender); listener.setDefaultResponseDestination(replyDestination); StubTextMessage inputMessage = createSimpleJmsTextMessage(body); inputMessage.setJMSCorrelationID(correlationId); listener.onMessage(inputMessage, session); assertDefaultListenerMethodInvocation(); verify(reply).setJMSCorrelationID(correlationId); verify(queueSender).send(reply); verify(queueSender).close(); }