1use strict;
2use warnings;
3use Test::More tests => 3;
4
5use Pod::Simple::XMLOutStream;
6print "# Pod::Simple version $Pod::Simple::VERSION\n";
7
8my $x = 'Pod::Simple::XMLOutStream';
9$Pod::Simple::XMLOutStream::ATTR_PAD   = ' ';
10$Pod::Simple::XMLOutStream::SORT_ATTRS = 1; # for predictably testable output
11
12sub on {shift->parse_empty_lists(1)}
13sub off {shift->parse_empty_lists(0)}
14
15my $pod = <<POD;
16=over
17
18=over
19
20=over
21
22=over
23
24=back
25
26=over
27
28=back
29
30=back
31
32=back
33
34=back
35POD
36
37#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
38
39print "# Testing default behavior (parse_empty_lists( FALSE )) ...\n";
40
41is( $x->_out($pod),
42  '<Document><over-block indent="4"><over-block indent="4"><over-block indent="4"></over-block></over-block></over-block></Document>'
43);
44
45print "# Testing explicit parse_empty_lists( FALSE ) ...\n";
46
47is( $x->_out(\&off, $pod),
48  '<Document><over-block indent="4"><over-block indent="4"><over-block indent="4"></over-block></over-block></over-block></Document>'
49);
50
51print "# Testing parse_empty_lists( TRUE ) ...\n";
52
53is( $x->_out(\&on, $pod),
54  '<Document><over-block indent="4"><over-block indent="4"><over-block indent="4"><over-empty indent="4"></over-empty><over-empty indent="4"></over-empty></over-block></over-block></over-block></Document>'
55);
56