Skip to content

Releases: xmlunit/xmlunit.net

XMLUnit.NET 2.7.0-beta-01

10 Apr 08:10

Choose a tag to compare

Pre-release

This is the very first release of XMLUnit.NET that supports .NET Standard 2.0 in addition to the traditional .NET Framework 3.5. Only the build process and the nuget packages have changed, there is no other difference between this release and XMLUnit.NET 2.6.0. If you don't need support for .NET Standard there is no reason to upgrade.

This release has been labeled beta as the packaging needs more thorough testing by the community.

Many thanks to @Shatl who performed most of the heavy lifting which has made this release possible.

XMLUnit.NET 2.6.0

22 Apr 10:10

Choose a tag to compare

This release fixes a few bugs and introduces a new experimental feature.

The full list of changes for XMLUnit.NET:

  • add a new experimental module xmlunit-placeholders which aims to
    use ${xmlunit.FOO} expressions inside of the control document to
    allow for a DSL-like approach of defining more complex tests.
    This initial seed only supports ${xmlunit.ignore} which can be
    used to make XMLUnit ignore the element containing this text.

  • fixed the message when CompareConstraint or
    ValidationConstraints (both NUnit 2.x and 3.x) as well as
    EvaluateXPathConstraint or HasXPathConstraint (only the NUnit
    3.x versions) pass but the assertion fails because the constraint
    itself was wrapped in a Not constraint.

  • the NUnit 3.x EvaluateXPathConstraint failed to resolve the nested
    constraint, leading to erroneous messages if the assertion failed.
    Issue #25

  • the XmlDocument instances used internally in Convert and
    Transformation now get their XmlResolver property set to null
    by default - which happens to be the default value of .NET 4.5.2 and
    later anyway. This is in accordance with the OWASP recommendations
    for XML eXternal Entity injection
    preventions
    .

    This may be a breaking change and you may need to provide an
    explicit XmlResolver instance of your own if you need to load
    external entities.

    Issue #27.

  • added a new ISource implementation
    ElementContentWhitespaceStrippedSource which is similar to
    WhitespaceStrippedSource but only affects text nodes that solely
    consist of whitespace and doesn't affect any other text nodes. Also
    added convenience IgnoreElementContentWhitespace methods to
    DiffBuilder and CompareConstraint.
    Issue similar to xmlunit/#119.

  • the configured NodeFilter is now applied before comparing
    XmlDocumentType nodes.

    This change breaks backwards compatibility as the old behavior was
    to ignore XmlDocumentType when counting the children of the
    XmlDocument node but not when actually comparing the
    XmlDocumentType. Prior to this change if one document had a document
    type declaration but the other didn't, a HAS_DOCTYPE_DECLARATION
    difference was detected, this will no longer be the case now. If you
    want to detect this difference, you need to use a more lenient
    NodeFilter than NodeFilters.Default
    (i.e. NodeFilters.AcceptAll) but then you will see an additional
    CHILD_NODELIST_LENGTH difference.

    Issue #26.

XMLUnit.NET 2.5.1

20 Oct 20:41

Choose a tag to compare

this release fixes a serious bug in the difference engine when documents only differ in namespace prefix.

The full list of changes for XMLUnit.NET:

  • elements that only differed in namespace prefix resulted in a false
    ELEMENT_TAG_NAME difference when compared.
    Issue #22

XMLUnit.NET 2.5.0

03 Sep 09:29

Choose a tag to compare

this release upgrades the XSLT used by CommentLessSource to use XSLT 2.0 and adds an option to select the XSLT version.

The full list of changes for XMLUnit.NET

  • CommentLessSource, DiffBuilder#IgnoreComments and
    CompareConstraint#IgnoreComments now all use XSLT version 2.0
    stylesheets in order to strip comments. New constructors and methods
    have been added if you need a different version of XSLT (in
    particular if you need 1.0 which used to be the default up to
    XMLUnit 2.4.0).
    Issue similar to xmlunit/#99.

XMLUnit.NET 2.4.0

23 Jul 13:43

Choose a tag to compare

This release changes DefaultComparisonFormatter in order to simplify creating custom ComparisonFormatters.

The full list of changes for XMLUnit.NET

  • made DefaultComparisonFormatter more subclass friendly.
    Issue similar to xmlunit/#93.

XMLUnit.NET 2.3.1

23 Mar 19:32

Choose a tag to compare

This release adds xml docs to the binary distribution and the nuget package, it doesn't contain any functional changes.

XMLUnit.NET 2.3.0

12 Nov 07:33

Choose a tag to compare

This release allows the schema used in W3C XML schema validation to be specified as XmlSchema when using the Validator or the corresponding constraints.

The full list of changes for XMLUnit.NET:

  • Validator and SchemaValidConstraint now accept using XmlSchema
    instances for the schema when validating instance documents.
    Issue similar to xmlunit/#89.

XMLUnit.NET 2.2.0

05 Jun 08:09

Choose a tag to compare

With this release ISources created from strings or byte[]s can be
used more than once.

The full list of changes for XMLUnit.NET:

  • Input.FromByteArray and Input.FromString now return ISources
    that can be used multiple times.
    Issue similar to xmlunit/#84.

XMLUnit.NET 2.1.1

09 Apr 05:05

Choose a tag to compare

This release fixes a single bug in the CompareConstraint and ValidationConstraint for NUnit2. If you are not using the NUnit2 constraints, there is no need to upgrade from 2.1.0.

The full list of changes:

  • CompareConstraint and ValidationConstraint for NUnit2 threw NullReferenceExceptions when combined with another failing Constraint.
    Issue similar to xmlunit/#81.

XMLUnit.NET 2.1.0

26 Mar 05:57

Choose a tag to compare

The headline feature of this new release are new NUnit Constraints for XPath assertions.

In addition a few DifferenceEvaluator implementations have been added,
a few bugs have been fixed and smaller improvements been made.

The full list of changes:

  • added CompareConstraint.WithNamespaceContext
    port of PR #54 by @cboehme.
  • added new implementations inside DifferenceEvaluators for common
    tasks like changing the outcome for specific differences or ignoring
    changes inside the XML prolog.
  • new HasXPath constraints that check for the existence of an XPath
    inside of a piece of XML or verify additional assertions on the
    XPath's stringified result.
    Port of corresponding matchers in XMLUnit for Java by @mariusneo.
  • DiffBuilder.WithComparisonFormatter now also fully applies to the
    Differences contained within the Diff.
    Issue xmlunit/#55