Class HeaderMatcher<T>
java.lang.Object
org.hamcrest.BaseMatcher<T>
org.hamcrest.TypeSafeMatcher<org.springframework.messaging.Message<T>>
org.springframework.integration.test.matcher.HeaderMatcher<T>
- All Implemented Interfaces:
org.hamcrest.Matcher<org.springframework.messaging.Message<T>>,org.hamcrest.SelfDescribing
public final class HeaderMatcher<T>
extends org.hamcrest.TypeSafeMatcher<org.springframework.messaging.Message<T>>
Are the
MessageHeaders of a Message containing any entry
or multiple that match?
For example using Assert.assertThat(Object, Matcher) for a single
entry:
ANY_HEADER_KEY = "foo";
ANY_HEADER_VALUE = "bar";
assertThat(message, hasEntry(ANY_HEADER_KEY, ANY_HEADER_VALUE));
assertThat(message, hasEntry(ANY_HEADER_KEY, is(String.class)));
assertThat(message, hasEntry(ANY_HEADER_KEY, notNullValue()));
assertThat(message, hasEntry(ANY_HEADER_KEY, is(ANY_HEADER_VALUE)));
For multiple entries to match all:
Map<String, Object> expectedInHeaderMap = new HashMap<String, Object>();
expectedInHeaderMap.put(ANY_HEADER_KEY, ANY_HEADER_VALUE);
expectedInHeaderMap.put(OTHER_HEADER_KEY, is(OTHER_HEADER_VALUE));
assertThat(message, HeaderMatcher.hasAllEntries(expectedInHeaderMap));
For a single key:
ANY_HEADER_KEY = "foo"; assertThat(message, HeaderMatcher.hasKey(ANY_HEADER_KEY));
-
Method Summary
Modifier and Type Method Description voiddescribeTo(org.hamcrest.Description description)static <P> HeaderMatcher<P>hasAllHeaders(java.util.Map<java.lang.String,?> entries)static <P, V> HeaderMatcher<P>hasCorrelationId(V value)static <P> HeaderMatcher<P>hasExpirationDate(java.util.Date value)static <P> HeaderMatcher<P>hasExpirationDate(org.hamcrest.Matcher<java.lang.Long> matcher)static <P, V> HeaderMatcher<P>hasHeader(java.lang.String key, org.hamcrest.Matcher<V> valueMatcher)static <P, V> HeaderMatcher<P>hasHeader(java.lang.String key, V value)static <P> HeaderMatcher<P>hasHeaderKey(java.lang.String key)static <P, V> HeaderMatcher<P>hasMessageId(V value)static <P> HeaderMatcher<P>hasSequenceNumber(java.lang.Integer value)static <P> HeaderMatcher<P>hasSequenceNumber(org.hamcrest.Matcher<java.lang.Integer> matcher)static <P> HeaderMatcher<P>hasSequenceSize(java.lang.Integer value)static <P> HeaderMatcher<P>hasSequenceSize(org.hamcrest.Matcher<java.lang.Integer> value)static <P> HeaderMatcher<P>hasTimestamp(java.util.Date value)static <P> HeaderMatcher<P>hasTimestamp(org.hamcrest.Matcher<java.lang.Long> matcher)booleanmatchesSafely(org.springframework.messaging.Message<T> item)Methods inherited from class org.hamcrest.TypeSafeMatcher
describeMismatch, describeMismatchSafely, matches
-
Method Details
-
matchesSafely
- Specified by:
matchesSafelyin classorg.hamcrest.TypeSafeMatcher<org.springframework.messaging.Message<T>>
-
describeTo
public void describeTo(org.hamcrest.Description description) -
hasHeader
-
hasHeader
public static <P, V> HeaderMatcher<P> hasHeader(java.lang.String key, org.hamcrest.Matcher<V> valueMatcher) -
hasHeaderKey
-
hasAllHeaders
-
hasMessageId
-
hasCorrelationId
-
hasSequenceNumber
-
hasSequenceNumber
public static <P> HeaderMatcher<P> hasSequenceNumber(org.hamcrest.Matcher<java.lang.Integer> matcher) -
hasSequenceSize
-
hasSequenceSize
-
hasExpirationDate
-
hasExpirationDate
-
hasTimestamp
-
hasTimestamp
-