public interface DifferenceEngineConfigurer<D extends DifferenceEngineConfigurer<D>>
DifferenceEngine.| Modifier and Type | Method and Description |
|---|---|
D |
withAttributeFilter(Predicate<Attr> attributeFilter)
Registers a filter for attributes.
|
D |
withComparisonController(ComparisonController comparisonController)
Replace the
ComparisonControllers#Default with your own ComparisonController. |
D |
withComparisonFormatter(ComparisonFormatter formatter)
Sets a non-default formatter for the differences found.
|
D |
withComparisonListeners(ComparisonListener... comparisonListeners)
Registers listeners that are notified of each comparison.
|
D |
withDifferenceEvaluator(DifferenceEvaluator differenceEvaluator)
Provide your own custom
DifferenceEvaluator implementation. |
D |
withDifferenceListeners(ComparisonListener... comparisonListeners)
Registers listeners that are notified of each comparison with
outcome other than
ComparisonResult#EQUAL. |
D |
withNamespaceContext(Map<String,String> prefix2Uri)
Establish a namespace context that will be used in
Comparison.Detail#getXPath. |
D |
withNodeFilter(Predicate<Node> nodeFilter)
Registers a filter for nodes.
|
D |
withNodeMatcher(NodeMatcher nodeMatcher)
Sets the strategy for selecting nodes to compare.
|
D withNodeMatcher(NodeMatcher nodeMatcher)
Example with DefaultNodeMatcher:
.withNodeMatcher(new DefaultNodeMatcher(ElementSelectors.byNameAndText))
D withDifferenceEvaluator(DifferenceEvaluator differenceEvaluator)
DifferenceEvaluator implementation.
This overwrites the Default DifferenceEvaluator.
If you want use your custom DifferenceEvaluator in
combination with the default or another DifferenceEvaluator you
should use DifferenceEvaluators#chain(DifferenceEvaluator...) or DifferenceEvaluators#first(DifferenceEvaluator...) to combine
them:
.withDifferenceEvaluator(
DifferenceEvaluators.chain(
DifferenceEvaluators.Default,
new MyCustomDifferenceEvaluator()))
....
D withComparisonController(ComparisonController comparisonController)
ComparisonControllers#Default with your own ComparisonController.
Example use:
.withComparisonController(ComparisonControllers.StopWhenDifferent)
D withComparisonListeners(ComparisonListener... comparisonListeners)
D withDifferenceListeners(ComparisonListener... comparisonListeners)
ComparisonResult#EQUAL.D withNamespaceContext(Map<String,String> prefix2Uri)
Comparison.Detail#getXPath.
Without a namespace context (or with an empty context) the XPath expressions will only use local names for elements and attributes.
prefix2Uri - mapping between prefix and namespace URID withAttributeFilter(Predicate<Attr> attributeFilter)
Only attributes for which the predicate returns true are part of the comparison. By default all attributes are considered.
The "special" namespace, namespace-location and
schema-instance-type attributes can not be ignored this way.
If you want to suppress comparison of them you'll need to
implement DifferenceEvaluator.
D withNodeFilter(Predicate<Node> nodeFilter)
Only nodes for which the predicate returns true are part of the comparison. By default nodes that are not document types are considered.
D withComparisonFormatter(ComparisonFormatter formatter)
Copyright © 2001–2021 XMLUnit. All rights reserved.