Build Status Codacy Grade Test Coverage Maven Central - Scala 2.11 Maven Central - Scala 2.12 Maven Central - Scala 2.13

XML Comparison Utils for Scala

scala-xml-compare is a small Scala library for comparing XML documents.

Quickstart

Add the following to your build.sbt:

libraryDependencies += "purpledragon.software.xml" %% "xml-compare" % "<version>"

You can then compare XML using:

val doc1 = <person><name>John Smith</name></person>
val doc2 = <person><name>Peter Smith</name></person>

val result = XmlCompare.compare(doc1, doc2)
// result1 = XmlDiffers("different text", "John Smith", "Peter Smith")

Scalatest

A companion library is provided for testing XML in Scalatest:

libraryDependencies += "purpledragon.software.xml" %% "xml-scalatest" % "<version>" % Test

This then enables the beXml matcher:

val doc = <person><name>John Smith</name></person>
doc should beXml(<person><name>John Smith</name></person>)

specs2

Similarly a companion library for specs2 is provided:

libraryDependencies += "purpledragon.software.xml" %% "xml-specs2" % "<version>" % Test