Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import org.hamcrest.Description;
- import org.hamcrest.TypeSafeMatcher;
- public class HasCorrelationId extends TypeSafeMatcher<Message> {
- private final Object expectedCorrelationId;
- public HasCorrelationId(Object expectedCorrelationId) {
- this.expectedCorrelationId = expectedCorrelationId;
- }
- @Override
- public boolean matchesSafely(Message message) {
- if (expectedCorrelationId==message.getCorrelationId()) return true;
- return expectedCorrelationId==null? false: expectedCorrelationId.equals(message.getCorrelationId());
- }
- public void describeTo(Description description) {
- description.appendText("hasCorrelationId("+expectedCorrelationId+")");
- }
- public static HasCorrelationId hasCorrelationId(Object correlationId) {
- return new HasCorrelationId(correlationId);
- }
- }
- public class MyTest {
- private Mockery context = new Mockery();
- @Test
- public void testCorrelationId() {
- final Client client = context.mock(Client.class);
- final Message message1 = context.mock(Message.class,"message1");
- final Message message2 = context.mock(Message.class,"message2");
- context.checking(new Expectations(){{
- allowing(message1).getCorrelationId();will(returnValue(null));
- allowing(message2).getCorrelationId();will(returnValue("abc"));
- one(client).forwardMessage(with(hasCorrelationId(null)));
- one(client).forwardMessage(with(hasCorrelationId("abc")));
- }});
- client.forwardMessage(message1);
- client.forwardMessage(message2);
- }
- }
Add Comment
Please, Sign In to add comment