File: 15ignore_multi.t

package info (click to toggle)
libxml-semanticdiff-perl 1.0007-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid, trixie
  • size: 340 kB
  • sloc: perl: 703; xml: 532; sh: 4; makefile: 2
file content (45 lines) | stat: -rw-r--r-- 971 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
use strict;
use warnings;

use Test::More tests => 3;

use XML::SemanticDiff;

my $xml1 = <<'EOX';
<?xml version="1.0"?>
<root>
<el1 el1attr="good"/>
<el2 el2attr="good">Some Text</el2>
<el4/>
</root>
EOX

my $xml2 = <<'EOX';
<?xml version="1.0"?>
<root>
<el1 el1attr="good"/>
<el2 el2attr="good">Some Text</el2>
<el3/>
</root>
EOX

#TEST
{
    my $diff_simple = XML::SemanticDiff->new();
    my $results = $diff_simple->compare($xml1, $xml2);
    ok($results == 2, "Two differences in XMLs");
}

#TEST
{
    my $diff_ignore = XML::SemanticDiff->new(ignorexpath=>["/root/el3"]);
    my $results = $diff_ignore->compare($xml1, $xml2);
    ok($results == 1, "Only one difference if /root/el3 is excluded");
}

#TEST
{
    my $diff_multiignore = XML::SemanticDiff->new(ignorexpath=>["/root/el3", "/root/el4"]);
    my $results = $diff_multiignore->compare($xml1, $xml2);
    ok($results == 0, "XMLs should count identical if xpaths /root/el3 and /root/el4 are excluded");
}