Package nl.jqno.equalsverifier.api
Class MultipleTypeEqualsVerifierApi
java.lang.Object
nl.jqno.equalsverifier.api.MultipleTypeEqualsVerifierApi
- All Implemented Interfaces:
EqualsVerifierApi<Void>
Helps to construct an
EqualsVerifier test for several types at once with a fluent API.-
Field Summary
Fields inherited from interface nl.jqno.equalsverifier.api.EqualsVerifierApi
WEBSITE_URL -
Constructor Summary
ConstructorsConstructorDescriptionMultipleTypeEqualsVerifierApi(List<Class<?>> types, ConfiguredEqualsVerifier ev) -
Method Summary
Modifier and TypeMethodDescriptionRemoves the given type or types from the list of types to verify.Removes all types matching the given Predicate.report()Performs the verifications of the contracts forequalsandhashCodeand returns a List ofEqualsVerifierReportwith the results of the verifications.Suppresses warnings given byEqualsVerifier.Signals thatgetClassis used in the implementation of theequalsmethod, instead of aninstanceofcheck.voidverify()Performs the verification of the contracts forequalsandhashCodeand throws anAssertionErrorif there is a problem.withGenericPrefabValues(Class<S> otherType, Func.Func1<?, S> factory) Adds a factory to generate prefabricated values for instance fields of classes with 1 generic type parameter that EqualsVerifier cannot instantiate by itself.withGenericPrefabValues(Class<S> otherType, Func.Func2<?, ?, S> factory) Adds a factory to generate prefabricated values for instance fields of classes with 2 generic type parameters that EqualsVerifier cannot instantiate by itself.withPrefabValues(Class<S> otherType, S red, S blue) Adds prefabricated values for instance fields of classes that EqualsVerifier cannot instantiate by itself.Signals that all internal caches need to be reset.
-
Constructor Details
-
MultipleTypeEqualsVerifierApi
-
-
Method Details
-
suppress
Suppresses warnings given byEqualsVerifier. SeeWarningto see what warnings can be suppressed.- Specified by:
suppressin interfaceEqualsVerifierApi<Void>- Parameters:
warnings- A list of warnings to suppress inEqualsVerifier.- Returns:
this, for easy method chaining.
-
withPrefabValues
Adds prefabricated values for instance fields of classes that EqualsVerifier cannot instantiate by itself.- Specified by:
withPrefabValuesin interfaceEqualsVerifierApi<Void>- Type Parameters:
S- The class of the prefabricated values.- Parameters:
otherType- The class of the prefabricated values.red- An instance ofS.blue- Another instance ofS, not equal tored.- Returns:
this, for easy method chaining.
-
withGenericPrefabValues
public <S> MultipleTypeEqualsVerifierApi withGenericPrefabValues(Class<S> otherType, Func.Func1<?, S> factory) Adds a factory to generate prefabricated values for instance fields of classes with 1 generic type parameter that EqualsVerifier cannot instantiate by itself.- Specified by:
withGenericPrefabValuesin interfaceEqualsVerifierApi<Void>- Type Parameters:
S- The class of the prefabricated values.- Parameters:
otherType- The class of the prefabricated values.factory- A factory to generate an instance ofS, given a value of its generic type parameter.- Returns:
this, for easy method chaining.
-
withGenericPrefabValues
public <S> MultipleTypeEqualsVerifierApi withGenericPrefabValues(Class<S> otherType, Func.Func2<?, ?, S> factory) Adds a factory to generate prefabricated values for instance fields of classes with 2 generic type parameters that EqualsVerifier cannot instantiate by itself.- Specified by:
withGenericPrefabValuesin interfaceEqualsVerifierApi<Void>- Type Parameters:
S- The class of the prefabricated values.- Parameters:
otherType- The class of the prefabricated values.factory- A factory to generate an instance ofS, given a value of each of its generic type parameters.- Returns:
this, for easy method chaining.
-
usingGetClass
Signals thatgetClassis used in the implementation of theequalsmethod, instead of aninstanceofcheck.- Specified by:
usingGetClassin interfaceEqualsVerifierApi<Void>- Returns:
this, for easy method chaining.- See Also:
-
withResetCaches
Signals that all internal caches need to be reset. This is useful when the test framework uses multiple ClassLoaders to run tests, causingClassinstances that would normally be equal, to be unequal, because their ClassLoaders don't match.- Specified by:
withResetCachesin interfaceEqualsVerifierApi<Void>- Returns:
this, for easy method chaining.
-
except
Removes the given type or types from the list of types to verify.- Parameters:
type- A type to remove from the list of types to verify.more- More types to remove from the list of types to verify.- Returns:
this, for easy method chaining.
-
except
Removes all types matching the given Predicate.- Parameters:
exclusionPredicate- A Predicate matching classes to remove from the list of types to verify.- Returns:
this, for easy method chaining.
-
verify
public void verify()Performs the verification of the contracts forequalsandhashCodeand throws anAssertionErrorif there is a problem.- Throws:
AssertionError- If one of the contracts is not met, or ifEqualsVerifier's preconditions do not hold.
-
report
Performs the verifications of the contracts forequalsandhashCodeand returns a List ofEqualsVerifierReportwith the results of the verifications.- Returns:
- A List of
EqualsVerifierReportthat indicates whether the contracts are met and whetherEqualsVerifier's preconditions hold.
-