import java.util.List;
import junit.framework.*;
import org.custommonkey.xmlunit.*;
public class XmlAssertions {
private static final String ERROR_MSG = "XML comparison failure. \nExpected: %s\nReceived: %s\n%s";
static {
XMLUnit.setIgnoreWhitespace(true);
}
public static void assertXmlSimilar(String expected, String actual) {
try {
Diff diff = new Diff(expected, actual);
List differences = new DetailedDiff(diff).getAllDifferences();
Assert.assertTrue(
String.format(ERROR_MSG, expected, actual, differences),
diff.similar());
} catch (Exception ex) {
Assert.fail(String.format(ERROR_MSG, expected, actual, ex.getMessage()));
}
}
public static void main(String[] args) {
XmlAssertions.assertXmlSimilar("", "");
XmlAssertions.assertXmlSimilar("data", "\ndata\n\n");
try {
XmlAssertions.assertXmlSimilar("data", "");
} catch (AssertionFailedError ignored) {
//expected
}
System.out.println("Success on XmlAssertions");
}
}