This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
locale.c: savepv() of getenv()
[perl5.git] / cpan / Pod-Simple / t / eol2.t
CommitLineData
60527824
FR
1#!/usr/bin/perl
2
3# t/eol2.t - check handling of \r, \n, and \r\n as line separators (again)
4
5BEGIN {
6 chdir 't' if -d 't';
7}
8
9use warnings;
10use strict;
11use lib '../lib';
12use Test::More tests => 7;
13
14use_ok('Pod::Simple::XHTML') or exit;
15
16open(POD, ">$$.pod") or die "$$.pod: $!";
17print POD <<__EOF__;
18=pod
19
20=head1 NAME
21
22crlf
23
24=head1 DESCRIPTION
25
26crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
27crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
28crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
29crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
30
31 crlf crlf crlf crlf
32 crlf crlf crlf crlf
33 crlf crlf crlf crlf
34
35crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
36crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
37crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
38crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
39
40=cut
41__EOF__
42close(POD);
43
44# --- CR ---
45
46my $p1 = Pod::Simple::XHTML->new ();
47isa_ok ($p1, 'Pod::Simple::XHTML');
48
49open(POD, "<$$.pod") or die "$$.pod: $!";
50my $i1 = '';
51while (<POD>) {
52 s/[\r\n]+/\r/g;
53 $i1 .= $_;
54}
55close(POD);
56
57$p1->output_string(\my $o1);
58$p1->parse_string_document($i1);
59
60# --- LF ---
61
62my $p2 = Pod::Simple::XHTML->new ();
63isa_ok ($p2, 'Pod::Simple::XHTML');
64
65open(POD, "<$$.pod") or die "$$.pod: $!";
66my $i2 = '';
67while (<POD>) {
68 s/[\r\n]+/\n/g;
69 $i2 .= $_;
70}
71close(POD);
72
73$p2->output_string(\my $o2);
74$p2->parse_string_document($i2);
75
76# --- CRLF ---
77
78my $p3 = Pod::Simple::XHTML->new ();
79isa_ok ($p3, 'Pod::Simple::XHTML');
80
81open(POD, "<$$.pod") or die "$$.pod: $!";
82my $i3 = '';
83while (<POD>) {
84 s/[\r\n]+/\r\n/g;
85 $i3 .= $_;
86}
87close(POD);
88
89$p3->output_string(\my $o3);
90$p3->parse_string_document($i3);
91
92# --- now test ---
93
94my $cksum1 = unpack("%32C*", $o1);
95my $cksum2 = unpack("%32C*", $o2);
96my $cksum3 = unpack("%32C*", $o3);
97
98ok($cksum1 == $cksum2, "CR vs LF");
99ok($cksum1 == $cksum3, "CR vs CRLF");
100ok($cksum2 == $cksum3, "LF vs CRLF");
101
102END {
103 1 while unlink("$$.pod", "$$.in");
104}