Skip to content

Commit 8867774

Browse files
authored
Update README.md
1 parent 371409e commit 8867774

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

README.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ The _control_ nodes represents the expected, i.e. how the nodes are expected to
55

66
## Usage
77

8-
## Difference engine steps
8+
9+
10+
## Difference engine details
911
The heart of the library is the `HtmlDifferenceEngine` class, which goes through the steps illustrated in the activity diagram below to determine if the control nodes is the same as the test nodes.
1012

1113
The `HtmlDifferenceEngine` class depends on three _strategies_, the `IFilterStrategy`, `IMatcherStrategy`, and `ICompareStrategy` types. These are used in the highlighted activities in the diagram. With those, we can control what nodes and attributes take part in the comparison (filter strategy), how control and test nodes and attributes are matched up for comparison (matching strategy), and finally, how nodes and attributes are determined to be same or different (compare strategy).
@@ -14,3 +16,11 @@ It starts with a call to the `Compare(INodeList controlNodes, INodeList testNode
1416

1517
![img](docs/HtmlDifferenceEngineFlow.svg)
1618

19+
The library comes with a bunch of different filters, matchers, and conparers, that you can configure and mix and match with your own, to get the exact diffing experience you want. See the Usage section above for details.
20+
21+
## Creating custom diffing strategies
22+
23+
## Acknowledgement
24+
Big thanks to [Florian Rappl](https://github.com/FlorianRappl) from the AngleSharp team for providing ideas, input and sample code for working with AngleSharp.
25+
26+
Another shout-out goes to [XMLUnit](https://www.xmlunit.org). It is a great XML diffing library, and it has been a great inspiration for creating this library.

0 commit comments

Comments
 (0)