1BEGIN {
2    use File::Spec::Functions ':ALL';
3    @INC = map { rel2abs($_) }
4             (qw| ./lib ./t/lib ../../lib |);
5}
6
7use strict;
8use warnings;
9use Test::More;
10use Testing qw( setup_testing_dir xconvert );
11use Cwd;
12
13my $debug = 0;
14my $startdir = cwd();
15END { chdir($startdir) or die("Cannot change back to $startdir: $!"); }
16my ($expect_raw, $args);
17{ local $/; $expect_raw = <DATA>; }
18
19my $tdir = setup_testing_dir( {
20    debug       => $debug,
21} );
22
23$args = {
24    podstub => "htmlview",
25    description => "html rendering",
26    expect => $expect_raw,
27    p2h => {
28        podpath => 't',
29        quiet  => 1,
30    },
31};
32
33xconvert($args);
34
35done_testing;
36
37__DATA__
38<?xml version="1.0" ?>
39<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
40<html xmlns="http://www.w3.org/1999/xhtml">
41<head>
42<title>Test HTML Rendering</title>
43<meta http-equiv="content-type" content="text/html; charset=utf-8" />
44<link rev="made" href="mailto:[PERLADMIN]" />
45</head>
46
47<body>
48
49
50
51<ul id="index">
52  <li><a href="#NAME">NAME</a></li>
53  <li><a href="#SYNOPSIS">SYNOPSIS</a></li>
54  <li><a href="#DESCRIPTION">DESCRIPTION</a></li>
55  <li><a href="#METHODS-OTHER-STUFF">METHODS =&gt; OTHER STUFF</a>
56    <ul>
57      <li><a href="#new">new()</a></li>
58      <li><a href="#old">old()</a></li>
59    </ul>
60  </li>
61  <li><a href="#TESTING-FOR-AND-BEGIN">TESTING FOR AND BEGIN</a></li>
62  <li><a href="#TESTING-URLs-hyperlinking">TESTING URLs hyperlinking</a></li>
63  <li><a href="#SEE-ALSO">SEE ALSO</a></li>
64  <li><a href="#POD-ERRORS">POD ERRORS</a></li>
65</ul>
66
67<h1 id="NAME">NAME</h1>
68
69<p>Test HTML Rendering</p>
70
71<h1 id="SYNOPSIS">SYNOPSIS</h1>
72
73<pre><code>use My::Module;
74
75my $module = My::Module-&gt;new();</code></pre>
76
77<h1 id="DESCRIPTION">DESCRIPTION</h1>
78
79<p>This is the description.</p>
80
81<pre><code>Here is a verbatim section.</code></pre>
82
83<p>This is some more regular text.</p>
84
85<p>Here is some <b>bold</b> text, some <i>italic</i> and something that looks like an &lt;html&gt; tag. This is some <code>$code($arg1)</code>.</p>
86
87<p>This <code>text contains embedded <b>bold</b> and <i>italic</i> tags</code>. These can be nested, allowing <b>bold and <i>bold &amp; italic</i> text</b>. The module also supports the extended <b>syntax</b> and permits <i>nested tags &amp; other <b>cool</b> stuff</i></p>
88
89<h1 id="METHODS-OTHER-STUFF">METHODS =&gt; OTHER STUFF</h1>
90
91<p>Here is a list of methods</p>
92
93<h2 id="new">new()</h2>
94
95<p>Constructor method. Accepts the following config options:</p>
96
97<dl>
98
99<dt id="foo">foo</dt>
100<dd>
101
102<p>The foo item.</p>
103
104</dd>
105<dt id="bar">bar</dt>
106<dd>
107
108<p>The bar item.</p>
109
110<ul>
111
112<p>This is a list within a list</p>
113
114<p>*</p>
115
116<p>The wiz item.</p>
117
118<p>*</p>
119
120<p>The waz item.</p>
121
122</ul>
123
124</dd>
125<dt id="baz">baz</dt>
126<dd>
127
128<p>The baz item.</p>
129
130<ul>
131
132<li><p>A correct list within a list</p>
133
134</li>
135<li><p>Boomerang</p>
136
137</li>
138</ul>
139
140</dd>
141</dl>
142
143<p>Title on the same line as the =item + * bullets</p>
144
145<ul>
146
147<li><p><code>Black</code> Cat</p>
148
149</li>
150<li><p>Sat <span style="white-space: nowrap;"><i>on</i> the</span></p>
151
152</li>
153<li><p>Mat&lt;!&gt;</p>
154
155</li>
156</ul>
157
158<p>Title on the same line as the =item + numerical bullets</p>
159
160<ol>
161
162<li><p>Cat</p>
163
164</li>
165<li><p>Sat</p>
166
167</li>
168<li><p>Mat</p>
169
170</li>
171</ol>
172
173<p>Numbered list with text on the same line</p>
174
175<dl>
176
177<dt id="Cat">1 Cat</dt>
178<dd>
179
180</dd>
181<dt id="Sat">2 Sat</dt>
182<dd>
183
184</dd>
185<dt id="Mat">3 Mat</dt>
186<dd>
187
188</dd>
189</dl>
190
191<p>No bullets, no title</p>
192
193<ul>
194
195<li><p>Cat</p>
196
197</li>
198<li><p>Sat</p>
199
200</li>
201<li><p>Mat</p>
202
203</li>
204</ul>
205
206<h2 id="old">old()</h2>
207
208<p>Destructor method</p>
209
210<h1 id="TESTING-FOR-AND-BEGIN">TESTING FOR AND BEGIN</h1>
211
212
213
214<br />
215<p>
216blah blah
217</p>
218
219<p>intermediate text</p>
220
221<more>
222HTML
223</more>
224
225some text
226
227<h1 id="TESTING-URLs-hyperlinking">TESTING URLs hyperlinking</h1>
228
229<p>This is an href link1: http://example.com</p>
230
231<p>This is an href link2: http://example.com/foo/bar.html</p>
232
233<p>This is an email link: mailto:foo@bar.com</p>
234
235<pre><code>This is a link in a verbatim block &lt;a href=&quot;http://perl.org">; Perl &lt;/a&gt;</code></pre>
236
237<h1 id="SEE-ALSO">SEE ALSO</h1>
238
239<p>See also <a href="/t/htmlescp.html">Test Page 2</a>, the <a>Your::Module</a> and <a>Their::Module</a> manpages and the other interesting file <i>/usr/local/my/module/rocks</i> as well.</p>
240
241<h1 id="POD-ERRORS">POD ERRORS</h1>
242
243<p>Hey! <b>The above document had some coding errors, which are explained below:</b></p>
244
245<dl>
246
247<dt id="Around-line-45">Around line 45:</dt>
248<dd>
249
250<p>You can&#39;t have =items (as at line 49) unless the first thing after the =over is an =item</p>
251
252</dd>
253</dl>
254
255
256</body>
257
258</html>
259
260
261