XMLUnit v2.7.0 Release Notes

Release Date: 2020-05-12 // 3 months ago
  • The biggest changes are to the placeholder and assertj modules. The assertj module should now work with AssertJ 3.15+.

    This version contains a backwards incompatible change to the PlaceholderHandler interface that is part of the experimental placeholders module: The evaluate method now receives a variable number of string arguments in addition to the textual content of the element/attribute. This allows placeholders like ${xmlunit.matchesRegex(some\s*regex)}.

    ✅ the AssertJ tests now pass on non-English locales as well
    Issue #180

    ➕ added a workaround for a binary incompatible change in AssertJ that caused xmlunit-assertj to be incompatible with AssertJ 3.15.0
    Issue #181

    ➕ added a new ${xmlunit.matchesRegex(regex)} placeholder
    PR #178 by @Jazzyekim.

    ➕ add a new ${xmlunit.isDateTime} placeholder
    inspired by #xmlunit.net/31 and #xmlunit.net/32 by MilkyWare
    Issue #174

    avoid unnecessary creation of DocumentBuilderFactory in DOMDifferenceEngine when a custom factory has been provided to DiffBuilder.
    Issue #182

Previous changes from v2.6.4

  • 🚀 This release fixes a bug that affects the XPath for missing nodes in certain corner cases and improves the AsssertJ module. In particular XMLUnit 2.6.4 is supposed to be compatible with AssertJ 3.13.x.

    The full list of changes:

    the dependencies on JAXB implementation and its transitive
    ✅ dependencies has been promoted from test scope to optional for Java
    9 and later
    Issue #162

    ➕ added containsAnyNodeHavingXPath, containsAllNodesHavingXPath
    and hasXPath assertions to xmlunit-assertj.

    ➕ added extractingAttribute method to xmlunit-assertj.

    ✂ removed some redundant instanceof checks.
    PR #171 by

    xmlunit-assertj should now work with AssertJ-Core 3.13.x
    Issue #166

    the XPath values for comparisons resulting in CHILD_LOOKUP
    differences could be wrong when NodeFilters were present.
    XMLUnit.NET Issue

    xmlunit-legacy will now use NewDifferenceEngine even when an
    ElementQualifier different from the built-in ones is used.