Class SequenceMatcher<T>

java.lang.Object
org.hamcrest.BaseMatcher<List<T>>
org.axonframework.test.matchers.ListMatcher<T>
org.axonframework.test.matchers.SequenceMatcher<T>
All Implemented Interfaces:
org.hamcrest.Matcher<List<T>>, org.hamcrest.SelfDescribing

public class SequenceMatcher<T> extends ListMatcher<T>
A matcher that will match if all the given matchers each match against an item that the previous matcher matched against. That means the second matcher should match an item that follow the item that the first matcher matched.

If the number of items is larger than the number of matchers, the excess items are not evaluated. Use Matchers.exactSequenceOf(org.hamcrest.Matcher[]) to match the sequence exactly. If the last item of the list has been evaluated, and Matchers still remain, they are evaluated against a null value.

Since:
1.1
Author:
Allard Buijze
  • Constructor Details

    • SequenceMatcher

      @SafeVarargs public SequenceMatcher(org.hamcrest.Matcher<? super T>... matchers)
      Construct a matcher that will return true if all the given matchers match against an item positioned after the item that the previous matcher matched against.
      Parameters:
      matchers - The matchers that must match against at least one item in the list.
  • Method Details

    • matchesList

      public boolean matchesList(List<T> items)
      Description copied from class: ListMatcher
      Evaluates the matcher for argument item. The item has been verified to be a list, but the exact type of contents of a list cannot be verified, due to Erasure of Generic Types.
      Specified by:
      matchesList in class ListMatcher<T>
      Parameters:
      items - the object against which the matcher is evaluated.
      Returns:
      true if item matches, otherwise false.
      See Also:
      • BaseMatcher
    • describeCollectionType

      protected void describeCollectionType(org.hamcrest.Description description)
      Description copied from class: ListMatcher
      Describes the type of collection expected. To be used in the sentence: "list with ... of: ". E.g. "all" or "sequence".
      Specified by:
      describeCollectionType in class ListMatcher<T>
      Parameters:
      description - the description to append the collection type to