Package nl.jqno.equalsverifier
Class ConfiguredEqualsVerifier
- java.lang.Object
-
- nl.jqno.equalsverifier.ConfiguredEqualsVerifier
-
- All Implemented Interfaces:
EqualsVerifierApi<Void>
public final class ConfiguredEqualsVerifier extends Object implements EqualsVerifierApi<Void>
-
-
Field Summary
-
Fields inherited from interface nl.jqno.equalsverifier.api.EqualsVerifierApi
WEBSITE_URL
-
-
Constructor Summary
Constructors Constructor Description ConfiguredEqualsVerifier()
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ConfiguredEqualsVerifier
copy()
Returns a copy of the configuration.<T> SingleTypeEqualsVerifierApi<T>
forClass(Class<T> type)
Factory method.MultipleTypeEqualsVerifierApi
forClasses(Class<?> first, Class<?> second, Class<?>... more)
Factory method.MultipleTypeEqualsVerifierApi
forClasses(Iterable<Class<?>> classes)
Factory method.MultipleTypeEqualsVerifierApi
forPackage(String packageName)
Factory method.MultipleTypeEqualsVerifierApi
forPackage(String packageName, boolean scanRecursively)
Factory method.ConfiguredEqualsVerifier
suppress(Warning... warnings)
Suppresses warnings given byEqualsVerifier
.ConfiguredEqualsVerifier
usingGetClass()
Signals thatgetClass
is used in the implementation of theequals
method, instead of aninstanceof
check.<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.<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.<S> ConfiguredEqualsVerifier
withPrefabValues(Class<S> otherType, S red, S blue)
Adds prefabricated values for instance fields of classes that EqualsVerifier cannot instantiate by itself.
-
-
-
Method Detail
-
copy
public ConfiguredEqualsVerifier copy()
Returns a copy of the configuration.- Returns:
- a copy of the configuration.
-
suppress
public ConfiguredEqualsVerifier suppress(Warning... warnings)
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
public <S> ConfiguredEqualsVerifier withPrefabValues(Class<S> otherType, S red, S blue)
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
public ConfiguredEqualsVerifier 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:
Warning.STRICT_INHERITANCE
-
forClass
public <T> SingleTypeEqualsVerifierApi<T> forClass(Class<T> type)
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
public MultipleTypeEqualsVerifierApi forClasses(Iterable<Class<?>> classes)
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
public MultipleTypeEqualsVerifierApi forClasses(Class<?> first, Class<?> second, Class<?>... more)
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
public MultipleTypeEqualsVerifierApi forPackage(String packageName)
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
public MultipleTypeEqualsVerifierApi forPackage(String packageName, boolean scanRecursively)
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.
-
-