use strict; use warnings; use Test::More 0.88; use autodie; use Test::DZil; my $with_place_for_pod = ' package DZT::WPFP; =head1 NAME DZT::WPFP - with place for pod! =cut sub foo { } 1; '; my $with_version = ' package DZT::WVer; =head1 NAME DZT::WVer - version in pod! =head1 VERSION version 1.234 =cut sub foo { } 1; '; my $with_multi_line_abstract = ' package DZT::MLA; =head1 NAME DZT::MLA - This abstract spans multiple lines. =cut sub foo { } 1; '; my $script = ' #!/usr/bin/perl =head1 NAME script.pl - a podded script! =cut print "hello world\n"; '; my $tzil = Builder->from_config( { dist_root => 'corpus/dist/DZT' }, { add_files => { 'source/lib/DZT/WPFP.pm' => $with_place_for_pod, 'source/lib/DZT/WVer.pm' => $with_version, 'source/lib/DZT/MLA.pm' => $with_multi_line_abstract, 'source/bin/script.pl' => $script, 'source/dist.ini' => simple_ini('GatherDir', 'PodVersion', 'ExecDir'), }, }, ); $tzil->build; my $want = <<'END_POD'; =head1 VERSION version 0.001 =cut END_POD my $want_mla = <<'END_POD'; =head1 NAME DZT::MLA - This abstract spans multiple lines. =head1 VERSION version 0.001 =cut END_POD my $dzt_sample = $tzil->slurp_file('build/lib/DZT/Sample.pm'); ok( index($dzt_sample, $want) == -1, "we didn't add version pod to Sample; it has no NAME", ); my $dzt_wpfp = $tzil->slurp_file('build/lib/DZT/WPFP.pm'); ok( index($dzt_wpfp, $want) > 0, "we did add version pod to WPFP", ); my $dzt_wver = $tzil->slurp_file('build/lib/DZT/WVer.pm'); ok( index($dzt_wver, $want) == -1, "we didn't add version pod to WVer; it has one already", ); my $dzt_mla = $tzil->slurp_file('build/lib/DZT/MLA.pm'); ok( index($dzt_mla, $want_mla) > 0, "we properly skipped over multi-line abstract", ); my $dzt_script = $tzil->slurp_file('build/bin/script.pl'); ok( index($dzt_script, $want) > 0, "we did add version pod to script", ); done_testing;