Comparando duas cadeias / arquivos XML no Groovy / Java
Eu estou escrevendo testes de unidade para verificar algum construtor de XML.
Agora estou encontrando o problema das diferenças sintáticas entre o resultado esperado e o resultado real, apesar de sua semântica idêntica.
Exemplo:
Resultado esperado:
<parent><child attr="test attribute">text here</child></parent>
Resultado atual:
<parent>
<child attr="test attribute">
text here
</child>
</parent>
Eu tentei normalizar o xml usando XmlUtil.serialize (), no entanto, isso parece manter os espaços em branco, deixando diferenças sintáticas.
Como posso obter a forma normalizada / canônica de sequências xml para tornar meus testes mais robustos?
Estou escrevendo um aplicativo Grails, então estou bem com qualquer solução no Groovy ou Java.