Upgrade to CGI.pm-3.13
[p5sagit/p5-mst-13.2.git] / lib / CGI / t / pretty.t
CommitLineData
188ba755 1#!/bin/perl -w
f0c07f2e 2
ac734d8b 3use strict;
188ba755 4use lib '.', 't/lib','../blib/lib','./blib/lib';
5use Test::More tests => 18;
ac734d8b 6
7BEGIN { use_ok('CGI::Pretty') };
8
9# This is silly use_ok should take arguments
10use CGI::Pretty (':all');
11
188ba755 12is(h1(), '<h1 />
13',"single tag");
ac734d8b 14
15is(ol(li('fred'),li('ethel')), <<HTML, "basic indentation");
16<ol>
17 <li>
18 fred
19 </li>
20 <li>
21 ethel
22 </li>
23</ol>
24HTML
25
26
27is(p('hi',pre('there'),'frog'), <<HTML, "<pre> tags");
28<p>
6b4ac661 29 hi <pre>there</pre>
ac734d8b 30 frog
6b4ac661 31</p>
ac734d8b 32HTML
33
188ba755 34is(h1({-align=>'CENTER'},'fred'), <<HTML, "open/close tag with attribute");
35<h1 align="CENTER">
36 fred
37</h1>
38HTML
39
40is(h1({-align=>undef},'fred'), <<HTML,"open/close tag with orphan attribute");
41<h1 align>
42 fred
43</h1>
44HTML
45
46is(h1({-align=>'CENTER'},['fred','agnes']), <<HTML, "distributive tag with attribute");
47<h1 align="CENTER">
48 fred
49</h1>
50<h1 align="CENTER">
51 agnes
52</h1>
53HTML
ac734d8b 54
55is(p('hi',a({-href=>'frog'},'there'),'frog'), <<HTML, "as-is");
56<p>
6b4ac661 57 hi <a href="frog">there</a>
ac734d8b 58 frog
6b4ac661 59</p>
ac734d8b 60HTML
61
188ba755 62is(p([ qw( hi there frog ) ] ), <<HTML, "array-reference");
63<p>
64 hi
65</p>
66<p>
67 there
68</p>
69<p>
70 frog
71</p>
72HTML
73
74is(p(p(p('hi'), 'there' ), 'frog'), <<HTML, "nested tags");
75<p>
76 <p>
77 <p>
78 hi
79 </p>
80 there
81 </p>
82 frog
83</p>
84HTML
85
86is(table(TR(td(table(TR(td('hi', 'there', 'frog')))))), <<HTML, "nested as-is tags");
87<table>
88 <tr>
89 <td><table>
90 <tr>
91 <td>hi there frog</td>
92 </tr>
93 </table></td>
94 </tr>
95</table>
96HTML
97
98is(table(TR(td(table(TR(td( [ qw( hi there frog ) ])))))), <<HTML, "nested as-is array-reference");
99<table>
100 <tr>
101 <td><table>
102 <tr>
103 <td>hi</td>
104 <td>there</td>
105 <td>frog</td>
106 </tr>
107 </table></td>
108 </tr>
109</table>
110HTML
111
112$CGI::Pretty::INDENT = $CGI::Pretty::LINEBREAK = "";
113
114is(h1(), '<h1 />',"single tag (pretty turned off)");
115is(h1('fred'), '<h1>fred</h1>',"open/close tag (pretty turned off)");
116is(h1('fred','agnes','maura'), '<h1>fred agnes maura</h1>',"open/close tag multiple (pretty turned off)");
117is(h1({-align=>'CENTER'},'fred'), '<h1 align="CENTER">fred</h1>',"open/close tag with attribute (pretty turned off)");
118is(h1({-align=>undef},'fred'), '<h1 align>fred</h1>',"open/close tag with orphan attribute (pretty turned off)");
119is(h1({-align=>'CENTER'},['fred','agnes']), '<h1 align="CENTER">fred</h1> <h1 align="CENTER">agnes</h1>',
120 "distributive tag with attribute (pretty turned off)");
121