Interface GetLastContract<E,C extends SequencedCollection<E>>

Type Parameters:
E - The element type being tested.
C - The collection type being tested.
All Superinterfaces:
CollectionContractConfig, CollectionContractSupport<E,C>, CollectionProviderSupport<E,C>, ContractSupport<C>, ElementProviderSupport<E>, ProviderSupport<C>, SupportedMethods
All Known Subinterfaces:
ListContract<E,L>, SequencedCollectionContract<E,C>

public interface GetLastContract<E,C extends SequencedCollection<E>> extends CollectionContractSupport<E,C>

Test for the getFirst method in the SequencedCollection interface. This contract class can be used individually by a test class, but it is normally used through the SequencedCollectionContract class:

public class MyCollectionTest extends SequencedCollectionContract<Integer, MyCollection<Integer>> {
}

If a test is using the SequencedCollectionContract class, but the class being tested does not implement the getLast method based upon the specification in the SequencedCollection class, then it can be omitted from the tests using the doesNotSupportMethod() method:

public class MyCollectionTest extends SequencedCollectionContract<Integer, MyCollection<Integer>> {
    public MyCollectionTest() {
        doesNotSupportMethod(CollectionMethods.GetLast);
    }
}
Since:
1.0
Author:
evanbergstrom
  • Method Details

    • testGetLast

      @DisplayName("Test that the getLast method works") @Test default void testGetLast()
      Tests that the getLast method works.
      Throws:
      org.opentest4j.AssertionFailedError - if the test fails.
      See Also:
    • testGetLastOnEmptyCollection

      @DisplayName("Test that the getLast method throws for an empty collection") @Test default void testGetLastOnEmptyCollection()
      Tests that the getLast method works on an empty collection.
      Throws:
      org.opentest4j.AssertionFailedError - if the test fails.
      See Also: