diff options
Diffstat (limited to 'ext/Pod-LaTeX/t/user.t')
-rw-r--r-- | ext/Pod-LaTeX/t/user.t | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/ext/Pod-LaTeX/t/user.t b/ext/Pod-LaTeX/t/user.t new file mode 100644 index 0000000000..04776de5ac --- /dev/null +++ b/ext/Pod-LaTeX/t/user.t @@ -0,0 +1,104 @@ +#!perl + +# Purpose: test UserPreamble and UserPostamble +# It's a minor variation of 'pod2latex.t', +# subject to the same limitations. +# Variant provided by +# Adriano Rodrigues Ferreira <ferreira@triang.com.br> + +use Test; +use strict; + +BEGIN { plan tests => 17 } + +use Pod::LaTeX; + +# The link parsing changed between v0.22 and v0.30 of Pod::ParseUtils +use Pod::ParseUtils; +my $linkver = $Pod::ParseUtils::VERSION; + +# Set up an END block to remove the test output file +END { + unlink "test.tex"; +}; + +ok(1); + +# First thing to do is to read the expected output from +# the DATA filehandle and store it in a scalar. +# Do this until we read an =pod +my @reference; +while (my $line = <DATA>) { + last if $line =~ /^=pod/; + push(@reference,$line); +} + +my $user_preamble = <<PRE; + +\\documentclass{article} + +\\begin{document} +PRE + +my $user_postamble = <<POST; +\\end{document} + +POST + +# Create a new parser +my %params = ( + UserPreamble => $user_preamble, + UserPostamble => $user_postamble +); + +my $parser = Pod::LaTeX->new(%params); +ok($parser); + +# Create an output file +open(OUTFH, "> test.tex" ) or die "Unable to open test tex file: $!\n"; + +# Read from the DATA filehandle and write to a new output file +# Really want to write this to a scalar +$parser->parse_from_filehandle(\*DATA,\*OUTFH); + +close(OUTFH) or die "Error closing OUTFH test.tex: $!\n"; + +# Now read in OUTFH and compare +open(INFH, "< test.tex") or die "Unable to read test tex file: $!\n"; +my @output = <INFH>; + +ok(@output, @reference); + +for my $i (0..$#reference) { + next if $reference[$i] =~ /^%%/; # skip timestamp comments + ok($output[$i], $reference[$i]); +} + +close(INFH) or die "Error closing INFH test.tex: $!\n"; + + +__DATA__ + +\documentclass{article} + +\begin{document} + +%% Latex generated from POD in document (unknown) +%% Using the perl module Pod::LaTeX +%% Converted on Wed Jan 14 19:04:22 2004 + +%% Preamble supplied by user. + +\section{POD\label{POD}\index{POD}} + + +This is a POD file, very simple. \textit{Bye}. + +\end{document} + +=pod + +=head1 POD + +This is a POD file, very simple. I<Bye>. + |