Class DefaultRecursiveComparisonIntrospectionStrategy
java.lang.Object
org.assertj.core.api.recursive.comparison.DefaultRecursiveComparisonIntrospectionStrategy
- All Implemented Interfaces:
RecursiveComparisonIntrospectionStrategy
public class DefaultRecursiveComparisonIntrospectionStrategy
extends Object
implements RecursiveComparisonIntrospectionStrategy
Introspects all fields (including inherited ones) and get their value according to
PropertyOrFieldSupport.getSimpleValue(String, Object)
.
There is a bit of discrepancy in this strategy as it looks for fields to compare but gets the value in this order: property first, then field and finally tries as map value if the instance is a map.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetChildNodeValue
(String childNodeName, Object instance) Returns the value of the given object child node, the child node being identified by the childNodeName parameter.getChildrenNodeNamesOf
(Object node) Returns the names of the children nodes of the given object that will be used in the recursive comparison.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.assertj.core.api.recursive.comparison.RecursiveComparisonIntrospectionStrategy
getDescription
-
Constructor Details
-
DefaultRecursiveComparisonIntrospectionStrategy
public DefaultRecursiveComparisonIntrospectionStrategy()
-
-
Method Details
-
getChildrenNodeNamesOf
Description copied from interface:RecursiveComparisonIntrospectionStrategy
Returns the names of the children nodes of the given object that will be used in the recursive comparison.A typical implementation could look at the object fields or properties.
- Specified by:
getChildrenNodeNamesOf
in interfaceRecursiveComparisonIntrospectionStrategy
- Parameters:
node
- the object to get the child nodes from- Returns:
- the names of the children nodes of the given object
-
getChildNodeValue
Description copied from interface:RecursiveComparisonIntrospectionStrategy
Returns the value of the given object child node, the child node being identified by the childNodeName parameter.It's the implementor choice how to resolve the child node value, a typical implementation consists of considering childNodeName to be a field name and then use introspection to read the field value, but if the object is a Map the implementation could consider the child node name to be a key of the map.
- Specified by:
getChildNodeValue
in interfaceRecursiveComparisonIntrospectionStrategy
- Parameters:
childNodeName
- the child node identifierinstance
- the object to read the child node from- Returns:
- the object child node value
-