Class StringContainsInOrder

All Implemented Interfaces:
Matcher<String>, SelfDescribing

public class StringContainsInOrder extends TypeSafeMatcher<String>
Tests if a string contains the given substrings in order.
  • Constructor Details

    • StringContainsInOrder

      public StringContainsInOrder(Iterable<String> substrings)
      Constructor, best called from stringContainsInOrder(Iterable)
      Parameters:
      substrings - the substrings that must be contained within matching strings
  • Method Details

    • matchesSafely

      public boolean matchesSafely(String s)
      Description copied from class: TypeSafeMatcher
      Check if the item matches. The item will already have been checked for the specific type and will never be null. Subclasses should implement this.
      Specified by:
      matchesSafely in class TypeSafeMatcher<String>
      Parameters:
      s - the type safe item to match against.
      Returns:
      boolean true/false depending if item matches matcher.
    • describeMismatchSafely

      public void describeMismatchSafely(String item, Description mismatchDescription)
      Description copied from class: TypeSafeMatcher
      Describe the mismatch. The item will already have been checked for the specific type and will never be null. Subclasses should override this.
      Overrides:
      describeMismatchSafely in class TypeSafeMatcher<String>
      Parameters:
      item - the type safe item to match against.
      mismatchDescription - the mismatch description.
    • describeTo

      public void describeTo(Description description)
      Description copied from interface: SelfDescribing
      Generates a description of the object. The description may be part of a description of a larger object of which this is just a component, so it should be worded appropriately.
      Parameters:
      description - The description to be built or appended to.
    • stringContainsInOrder

      public static Matcher<String> stringContainsInOrder(Iterable<String> substrings)
      Creates a matcher of String that matches when the examined string contains all of the specified substrings, considering the order of their appearance. For example:
      assertThat("myfoobarbaz", stringContainsInOrder(Arrays.asList("bar", "foo")))
      fails as "foo" occurs before "bar" in the string "myfoobarbaz"
      Parameters:
      substrings - the substrings that must be contained within matching strings
      Returns:
      The matcher.
    • stringContainsInOrder

      public static Matcher<String> stringContainsInOrder(String... substrings)
      Creates a matcher of String that matches when the examined string contains all of the specified substrings, considering the order of their appearance. For example:
      assertThat("myfoobarbaz", stringContainsInOrder("bar", "foo"))
      fails as "foo" occurs before "bar" in the string "myfoobarbaz"
      Parameters:
      substrings - the substrings that must be contained within matching strings
      Returns:
      The matcher.