File: xml_read.t

package info (click to toggle)
libcatmandu-xml-perl 0.17-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 216 kB
  • sloc: perl: 387; xml: 28; makefile: 2; sh: 1
file content (25 lines) | stat: -rw-r--r-- 730 bytes parent folder | download | duplicates (3)
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
use strict;
use warnings;
use Test::More;
use Catmandu::Fix::xml_read as => 'parse';

my $xml = '<foo bar="doz">baz</foo>';
my $data = { xml => $xml };

parse($data,'xml');
is_deeply $data->{xml}, [ 'foo', { bar => 'doz' }, [ 'baz' ] ], 'xml_read';

$data = { xml => $xml };
parse($data,'xml', attributes=> 0);
is_deeply $data->{xml}, [ 'foo', [ 'baz' ] ], 'xml_read(attributes=0)';

$xml = '<root><a>x</a><a>y</a><a>z</a></root>';
$data = { xml => $xml };
parse($data,'xml', simple => 1);
is_deeply $data->{xml}, { a => [qw(x y z)] }, 'xml_read(simple=0)';

$data = { xml => $xml };
parse($data,'xml', attributes => 0, path => 'a');
is_deeply $data->{xml}, [[a=>['x']],[a=>['y']],[a=>['z']] ], 'xml_read(path=a)';

done_testing;