Class MultimapSubject.UsingCorrespondence<A,​E>

  • Enclosing class:
    MultimapSubject

    public final class MultimapSubject.UsingCorrespondence<A,​E>
    extends Object
    A partially specified check in which the actual values (i.e. the values of the Multimap under test) are compared to expected values using a Correspondence. The expected values are of type E. Call methods on this object to actually execute the check.

    Note that keys will always be compared with regular object equality (Object.equals(java.lang.Object)).

    • Method Detail

      • containsEntry

        public void containsEntry​(@NullableDecl
                                  Object expectedKey,
                                  @NullableDecl
                                  E expectedValue)
        Fails if the multimap does not contain an entry with the given key and a value that corresponds to the given value.
      • doesNotContainEntry

        public void doesNotContainEntry​(@NullableDecl
                                        Object excludedKey,
                                        @NullableDecl
                                        E excludedValue)
        Fails if the multimap contains an entry with the given key and a value that corresponds to the given value.
      • containsExactlyEntriesIn

        @CanIgnoreReturnValue
        public Ordered containsExactlyEntriesIn​(Multimap<?,​? extends E> expectedMultimap)
        Fails if the map does not contain exactly the keys in the given multimap, mapping to values that correspond to the values of the given multimap.

        A subsequent call to Ordered.inOrder() may be made if the caller wishes to verify that the two Multimaps iterate fully in the same order. That is, their key sets iterate in the same order, and the corresponding value collections for each key iterate in the same order.

      • containsAtLeastEntriesIn

        @CanIgnoreReturnValue
        public Ordered containsAtLeastEntriesIn​(Multimap<?,​? extends E> expectedMultimap)
        Fails if the map does not contain at least the keys in the given multimap, mapping to values that correspond to the values of the given multimap.

        A subsequent call to Ordered.inOrder() may be made if the caller wishes to verify that the two Multimaps iterate fully in the same order. That is, their key sets iterate in the same order, and the corresponding value collections for each key iterate in the same order.

      • containsExactly

        @CanIgnoreReturnValue
        public Ordered containsExactly​(@NullableDecl
                                       Object k0,
                                       @NullableDecl
                                       E v0,
                                       Object... rest)
        Fails if the multimap does not contain exactly the given set of key/value pairs.

        Warning: the use of varargs means that we cannot guarantee an equal number of key/value pairs at compile time. Please make sure you provide varargs in key/value pairs!

      • containsExactly

        @CanIgnoreReturnValue
        public Ordered containsExactly()
        Fails if the multimap is not empty.
      • containsAtLeast

        @CanIgnoreReturnValue
        public Ordered containsAtLeast​(@NullableDecl
                                       Object k0,
                                       @NullableDecl
                                       E v0,
                                       Object... rest)
        Fails if the multimap does not contain at least the given key/value pairs.

        Warning: the use of varargs means that we cannot guarantee an equal number of key/value pairs at compile time. Please make sure you provide varargs in key/value pairs!