@Test public void testTwoWay() throws Exception { assertEquals("FOO", this.rabbitTemplate.convertSendAndReceive(this.queue1.getName(), "foo")); InvocationData invocationData = this.harness.getNextInvocationDataFor("foo", 10, TimeUnit.SECONDS); assertNotNull(invocationData); assertThat((String) invocationData.getArguments()[0], equalTo("foo")); assertThat((String) invocationData.getResult(), equalTo("FOO")); }
@Test public void testTwoWay() throws Exception { assertEquals("FOO", this.rabbitTemplate.convertSendAndReceive(this.queue1.getName(), "foo")); Listener listener = this.harness.getSpy("foo"); assertNotNull(listener); verify(listener).foo("foo"); InvocationData invocationData = this.harness.getNextInvocationDataFor("foo", 10, TimeUnit.SECONDS); assertNotNull(invocationData); assertThat((String) invocationData.getArguments()[0], equalTo("foo")); assertThat((String) invocationData.getResult(), equalTo("FOO")); }
@Test public void testOneWay() throws Exception { this.rabbitTemplate.convertAndSend(this.queue2.getName(), "bar"); this.rabbitTemplate.convertAndSend(this.queue2.getName(), "baz"); this.rabbitTemplate.convertAndSend(this.queue2.getName(), "ex"); InvocationData invocationData = this.harness.getNextInvocationDataFor("bar", 10, TimeUnit.SECONDS); assertNotNull(invocationData); Object[] args = invocationData.getArguments(); assertThat((String) args[0], equalTo("bar")); assertThat((String) args[1], equalTo(queue2.getName())); invocationData = this.harness.getNextInvocationDataFor("bar", 10, TimeUnit.SECONDS); assertNotNull(invocationData); args = invocationData.getArguments(); assertThat((String) args[0], equalTo("baz")); assertThat((String) args[1], equalTo(queue2.getName())); invocationData = this.harness.getNextInvocationDataFor("bar", 10, TimeUnit.SECONDS); assertNotNull(invocationData); args = invocationData.getArguments(); assertThat((String) args[0], equalTo("ex")); assertThat((String) args[1], equalTo(queue2.getName())); assertNotNull(invocationData.getThrowable()); assertEquals("ex", invocationData.getThrowable().getMessage()); invocationData = this.harness.getNextInvocationDataFor("bar", 10, TimeUnit.SECONDS); assertNotNull(invocationData); args = invocationData.getArguments(); assertThat((String) args[0], equalTo("ex")); assertThat((String) args[1], equalTo(queue2.getName())); assertNull(invocationData.getThrowable()); }
verify(listener).foo("baz", this.queue2.getName()); InvocationData invocationData = this.harness.getNextInvocationDataFor("bar", 10, TimeUnit.SECONDS); assertNotNull(invocationData); Object[] args = invocationData.getArguments(); assertThat((String) args[1], equalTo(queue2.getName())); invocationData = this.harness.getNextInvocationDataFor("bar", 10, TimeUnit.SECONDS); assertNotNull(invocationData); args = invocationData.getArguments(); assertThat((String) args[1], equalTo(queue2.getName())); invocationData = this.harness.getNextInvocationDataFor("bar", 10, TimeUnit.SECONDS); assertNotNull(invocationData); args = invocationData.getArguments(); assertEquals("ex", invocationData.getThrowable().getMessage()); invocationData = this.harness.getNextInvocationDataFor("bar", 10, TimeUnit.SECONDS); assertNotNull(invocationData); args = invocationData.getArguments();