1#!./perl
2
3BEGIN { chdir 't' if -d 't'; @INC = '../lib' }
4
5use Pod::Plainer;
6my $parser = Pod::Plainer->new();
7my $header = "=pod\n\n";
8my $input  = 'plnr_in.pod';
9my $output = 'plnr_out.pod';
10
11my $test = 0;
12print "1..7\n";
13while( <DATA> ) {
14    my $expected = $header.<DATA>; 
15
16    open(IN, '>', $input) or die $!;
17    print IN $header, $_;
18    close IN or die $!;
19
20    open IN, '<', $input or die $!;
21    open OUT, '>', $output or die $!;
22    $parser->parse_from_filehandle(\*IN,\*OUT);
23
24    open OUT, '<', $output or die $!;
25    my $returned; { local $/; $returned = <OUT>; }
26    
27    unless( $returned eq $expected ) {
28       print map { s/^/\#/mg; $_; }
29               map {+$_}               # to avoid readonly values
30                   "EXPECTED:\n", $expected, "GOT:\n", $returned;
31       print "not ";
32    }
33    printf "ok %d\n", ++$test; 
34    close OUT;
35    close IN;
36}
37
38END { 
39    1 while unlink $input;
40    1 while unlink $output;
41}
42
43__END__
44=head <> now reads in records
45=head E<lt>E<gt> now reads in records
46=item C<-T> and C<-B> not implemented on filehandles
47=item C<-T> and C<-B> not implemented on filehandles
48e.g. C<< Foo->bar() >> or C<< $obj->bar() >>
49e.g. C<Foo-E<gt>bar()> or C<$obj-E<gt>bar()>
50The C<< => >> operator is mostly just a more visually distinctive
51The C<=E<gt>> operator is mostly just a more visually distinctive
52C<uv < 0x80> in which case you can use C<*s = uv>.
53C<uv E<lt> 0x80> in which case you can use C<*s = uv>.
54C<time ^ ($$ + ($$ << 15))>), but that isn't necessary any more.
55C<time ^ ($$ + ($$ E<lt>E<lt> 15))>), but that isn't necessary any more.
56The bitwise operation C<<< >> >>>
57The bitwise operation C<E<gt>E<gt>>
58