Integrate mainline
[p5sagit/p5-mst-13.2.git] / lib / Pod / t / eol.t
1 #!./perl -w
2
3 BEGIN {
4     if (ord("A") == 193) {
5         print "1..0 \# Skip: EBCDIC\n";
6         exit(0);
7     }
8 }
9
10 use Test::More tests => 3;
11
12 open(POD, ">$$.pod") or die "$$.pod: $!";
13 print POD <<__EOF__;
14 =pod
15
16 =head1 NAME
17
18 crlf
19
20 =head1 DESCRIPTION
21
22 crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
23 crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
24 crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
25 crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
26
27     crlf crlf crlf crlf
28     crlf crlf crlf crlf
29     crlf crlf crlf crlf
30
31 crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
32 crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
33 crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
34 crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf crlf
35
36 =cut
37 __EOF__
38 close(POD);
39
40 use Pod::Html;
41
42 # --- CR ---
43
44 open(POD, "<$$.pod") or die "$$.pod: $!";
45 open(IN,  ">$$.in")  or die "$$.in: $!";
46 while (<POD>) {
47   tr/\x0D\x0A//d;
48   print IN $_, "\x0D";
49 }
50 close(POD);
51 close(IN);
52
53 pod2html("--title=eol", "--infile=$$.in", "--outfile=$$.o1");
54
55 # --- LF ---
56
57 open(POD, "<$$.pod") or die "$$.pod: $!";
58 open(IN,  ">$$.in")  or die "$$.in: $!";
59 while (<POD>) {
60   tr/\x0D\x0A//d;
61   print IN $_, "\x0A";
62 }
63 close(POD);
64 close(IN);
65
66 pod2html("--title=eol", "--infile=$$.in", "--outfile=$$.o2");
67
68 # --- CRLF ---
69
70 open(POD, "<$$.pod") or die "$$.pod: $!";
71 open(IN,  ">$$.in")  or die "$$.in: $!";
72 while (<POD>) {
73   tr/\x0D\x0A//d;
74   print IN $_, "\x0D\x0A";
75 }
76 close(POD);
77 close(IN);
78
79 pod2html("--title=eol", "--infile=$$.in", "--outfile=$$.o3");
80
81 # --- now test ---
82
83 local $/;
84
85 open(IN, "<$$.o1") or die "$$.o1: $!";
86 my $cksum1 = unpack("%32C*", <IN>);
87
88 open(IN, "<$$.o2") or die "$$.o2: $!";
89 my $cksum2 = unpack("%32C*", <IN>);
90
91 open(IN, "<$$.o3") or die "$$.o3: $!";
92 my $cksum3 = unpack("%32C*", <IN>);
93
94 ok($cksum1 == $cksum2, "CR vs LF");
95 ok($cksum1 == $cksum3, "CR vs CRLF");
96 ok($cksum2 == $cksum3, "LF vs CRLF");
97
98 END {
99   1 while unlink("$$.pod", "$$.in", "$$.o1", "$$.o2", "$$.o3");
100 }