use strict;
use lib '.';
use Texinfo::ModulePath (undef, undef, undef, 'updirs' => 2);
use Test::More;
BEGIN { plan tests => 23; }
use Texinfo::Parser qw(parse_texi_piece parse_texi_line);
#use Texinfo::Convert::Texinfo;
use Texinfo::Common;
use Data::Dumper;
ok(1, "modules loading");
sub test_is_empty($$$;$)
{
my $name = shift;
my $is_empty = shift;
my $in = shift;
my $do_not_ignore_index_entries = shift;
my $tree_as_text = parse_texi_piece(undef, $in);
my $tree_as_line = parse_texi_line(undef, $in);
my $result_as_text = Texinfo::Common::is_content_empty($tree_as_text,
$do_not_ignore_index_entries);
my $result_as_line = Texinfo::Common::is_content_empty($tree_as_line,
$do_not_ignore_index_entries);
if (not defined($is_empty)) {
print STDERR " --> $name: $result_as_text, $result_as_line\n";
} else {
is($result_as_text, $is_empty, "text $name");
is($result_as_line, $is_empty, "line $name");
}
}
test_is_empty('empty', 1, '');
test_is_empty('spaces', 1, ' ');
test_is_empty('lines', 1, '
');
test_is_empty('text', 0, 'truc'."\n");
test_is_empty('heading', 0, '@heading truc'."\n");
test_is_empty('index ignored', 1, '@cindex index'."\n");
test_is_empty('index not ignored', 0, '@cindex index'."\n", 1);
test_is_empty('ignored misc', 1, '@defindex idx'."\n");
test_is_empty('ignored misc then text', 0, '@alias lang=lisp
@AA{}.
');
test_is_empty('@ignore', 1, '@ignore
truc
@end ignore
');
test_is_empty('block command', 0, '@itemize @bullet
@item truc
@end itemize
');
done_testing();