Interface RemoveLastContract<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 RemoveLastContract<E,C extends SequencedCollection<E>>
extends CollectionContractSupport<E,C>
Test for the removeLast 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 removeLast
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.RemoveLast);
}
}
- Since:
- 1.0
- Author:
- evanbergstrom
-
Field Summary
Fields inherited from interface org.soliscode.test.contract.support.CollectionContractSupport
DEFAULT_SIZE
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
Tests that the removeLast method works with a collection with elements.default void
Tests that the removeLast method works for an empty collection.Methods inherited from interface org.soliscode.test.contract.CollectionContractConfig
permitDuplicates, permitIncompatibleTypes, permitNulls
Methods inherited from interface org.soliscode.test.contract.support.CollectionProviderSupport
provider
Methods inherited from interface org.soliscode.test.contract.support.ElementProviderSupport
elementProvider
Methods inherited from interface org.soliscode.test.SupportedMethods
supportsMethod
-
Method Details
-
testRemoveLast
@DisplayName("Test that the removeLast method works") @Test default void testRemoveLast()Tests that the removeLast method works with a collection with elements.- Throws:
org.opentest4j.AssertionFailedError
- if the test fails.- See Also:
-
testRemoveLastOnEmptyCollection
@DisplayName("Test that the removeLast method throws for an empty collection") @Test default void testRemoveLastOnEmptyCollection()Tests that the removeLast method works for an empty collection.- Throws:
org.opentest4j.AssertionFailedError
- if the test fails.- See Also:
-