Package nl.jqno.equalsverifier
Class ConfiguredEqualsVerifier
java.lang.Object
nl.jqno.equalsverifier.ConfiguredEqualsVerifier
- All Implemented Interfaces:
EqualsVerifierApi<Void>
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptioncopy()
Returns a copy of the configuration.<T> SingleTypeEqualsVerifierApi<T>
Factory method.forClasses
(Class<?> first, Class<?> second, Class<?>... more) Factory method.forClasses
(Iterable<Class<?>> classes) Factory method.forPackage
(String packageName) Factory method.forPackage
(String packageName, boolean scanRecursively) Factory method.forPackage
(String packageName, Class<?> mustExtend) Factory method.Suppresses warnings given byEqualsVerifier
.Signals thatgetClass
is used in the implementation of theequals
method, instead of aninstanceof
check.withFieldnameToGetterConverter
(Function<String, String> converter) Determines how a getter name can be derived from a field name.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
-
ConfiguredEqualsVerifier
public ConfiguredEqualsVerifier()Constructor.
-
-
Method Details
-
copy
Returns a copy of the configuration.- Returns:
- a copy of the configuration.
-
suppress
Suppresses warnings given byEqualsVerifier
. SeeWarning
to see what warnings can be suppressed.- Specified by:
suppress
in 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:
withPrefabValues
in 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> ConfiguredEqualsVerifier 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:
withGenericPrefabValues
in 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> ConfiguredEqualsVerifier 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:
withGenericPrefabValues
in 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 thatgetClass
is used in the implementation of theequals
method, instead of aninstanceof
check.- Specified by:
usingGetClass
in interfaceEqualsVerifierApi<Void>
- Returns:
this
, for easy method chaining.- See Also:
-
withFieldnameToGetterConverter
Description copied from interface:EqualsVerifierApi
Determines how a getter name can be derived from a field name. The default behavior is to uppercase the field's first letter and prepend 'get'. For instance, a field name 'employee' would correspond to getter name 'getEmployee'. This method can be used if your project has a different naming convention.- Specified by:
withFieldnameToGetterConverter
in interfaceEqualsVerifierApi<Void>
- Parameters:
converter
- A function that converts from field name to getter name.- Returns:
this
, for easy method chaining.
-
withResetCaches
Signals that all internal caches need to be reset. This is useful when the test framework uses multiple ClassLoaders to run tests, causingClass
instances that would normally be equal, to be unequal, because their ClassLoaders don't match.- Specified by:
withResetCaches
in interfaceEqualsVerifierApi<Void>
- Returns:
this
, for easy method chaining.
-
forClass
Factory method. For general use.- Type Parameters:
T
- The type.- Parameters:
type
- The class for which theequals
method should be tested.- Returns:
- A fluent API for EqualsVerifier.
-
forClasses
Factory method. For general use.- Parameters:
classes
- An iterable containing the classes for whichequals
method should be tested.- Returns:
- A fluent API for EqualsVerifier.
-
forClasses
Factory method. For general use.- Parameters:
first
- A class for which theequals
method should be tested.second
- Another class for which theequals
method should be tested.more
- More classes for which theequals
method should be tested.- Returns:
- A fluent API for EqualsVerifier.
-
forPackage
Factory method. For general use.Note that this operation may be slow. If the test is too slow, use
forClasses(Class, Class, Class...)
instead.- Parameters:
packageName
- A package for which each class'sequals
should be tested.- Returns:
- A fluent API for EqualsVerifier.
-
forPackage
Factory method. For general use.Note that this operation may be slow. If the test is too slow, use
forClasses(Class, Class, Class...)
instead.- Parameters:
packageName
- A package for which each class'sequals
should be tested.scanRecursively
- true to scan all sub-packages- Returns:
- A fluent API for EqualsVerifier.
-
forPackage
Factory method. For general use.Note that this operation may be slow. If the test is too slow, use
forClasses(Class, Class, Class...)
instead.Also note that if
mustExtend
is given, and it exists withinpackageName
, it will NOT be included.- Parameters:
packageName
- A package for which each class'sequals
should be tested.mustExtend
- if not null, returns only classes that extend or implement this class.- Returns:
- A fluent API for EqualsVerifier.
-