Как настроить XmlUnit.Net для игнорирования объявления XML при сравнении двух документов?
Предположим, у меня есть следующий контрольный документ:
<?xml version="1.0" encoding="utf-8"?>
<a><amount>1</amount></a>
Что я хочу сравнить с:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<a><amount>1</amount></a>
Сравнение не должно привести к различиям.
Я ожидаю, что использование такого NodeFilter должно работать, но это не так:
var diff = DiffBuilder.Compare(control)
.WithTest(test)
.WithNodeFilter(n => n.NodeType != XmlNodeType.XmlDeclaration)
.Build();
diff.Differences.Count().Should().Be(0);
Утверждение не выполняется с двумя отличиями: одно для кодировки (другой регистр) и другое для автономного атрибута. Я не заинтересован в любом.
Скажу ли я n.NodeType != XmlNodeType.XmlDeclaration
или n.NodeType == XmlNodeType.XmlDeclaration
не имеет значения.
Я использую XMLUnit.Core v2.5.1.