Class IsIterableWithSize<E>

  • All Implemented Interfaces:
    Matcher<java.lang.Iterable<E>>, SelfDescribing

    public class IsIterableWithSize<E>
    extends FeatureMatcher<java.lang.Iterable<E>,​java.lang.Integer>
    • Constructor Detail

      • IsIterableWithSize

        public IsIterableWithSize​(Matcher<? super java.lang.Integer> sizeMatcher)
    • Method Detail

      • featureValueOf

        protected java.lang.Integer featureValueOf​(java.lang.Iterable<E> actual)
        Description copied from class: FeatureMatcher
        Implement this to extract the interesting feature.
        Specified by:
        featureValueOf in class FeatureMatcher<java.lang.Iterable<E>,​java.lang.Integer>
        Parameters:
        actual - the target object
        Returns:
        the feature to be matched
      • iterableWithSize

        public static <E> Matcher<java.lang.Iterable<E>> iterableWithSize​(Matcher<? super java.lang.Integer> sizeMatcher)
        Creates a matcher for Iterables that matches when a single pass over the examined Iterable yields an item count that satisfies the specified matcher.

        For example:

        assertThat(Arrays.asList("foo", "bar"), iterableWithSize(equalTo(2)))
        Parameters:
        sizeMatcher - a matcher for the number of items that should be yielded by an examined Iterable
      • iterableWithSize

        public static <E> Matcher<java.lang.Iterable<E>> iterableWithSize​(int size)
        Creates a matcher for Iterables that matches when a single pass over the examined Iterable yields an item count that is equal to the specified size argument.

        For example:

        assertThat(Arrays.asList("foo", "bar"), iterableWithSize(2))
        Parameters:
        size - the number of items that should be yielded by an examined Iterable