#!/usr/bin/perl -w # t/xhtml01.t - check basic output from Pod::Simple::XHTML BEGIN { chdir 't' if -d 't'; } use strict; use warnings; use lib '../lib'; use Test::More tests => 64; #use Test::More 'no_plan'; use_ok('Pod::Simple::XHTML') or exit; my $parser = Pod::Simple::XHTML->new (); isa_ok ($parser, 'Pod::Simple::XHTML'); my $results; my $PERLDOC = "https://metacpan.org/pod"; my $MANURL = "http://man.he.net/man"; initialize($parser, $results); $parser->parse_string_document( "=head1 Poit!" ); is($results, qq{
Gee, Brain, what do you want to do tonight?
EOHTML initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =pod B: Now, Pinky, if by any chance you are captured during this mission, remember you are Gunther Heindriksen from Appenzell. You moved to Grindelwald to drive the cog train to Murren. Can you repeat that? P: Mmmm, no, Brain, dont think I can. EOPOD is($results, <<'EOHTML', "multiple paragraphs");B: Now, Pinky, if by any chance you are captured during this mission, remember you are Gunther Heindriksen from Appenzell. You moved to Grindelwald to drive the cog train to Murren. Can you repeat that?
P: Mmmm, no, Brain, dont think I can.
EOHTML initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =over =item * P: Gee, Brain, what do you want to do tonight? =item * B: The same thing we do every night, Pinky. Try to take over the world! =back EOPOD is($results, <<'EOHTML', "simple bulleted list");P: Gee, Brain, what do you want to do tonight?
B: The same thing we do every night, Pinky. Try to take over the world!
P: Gee, Brain, what do you want to do tonight?
B: The same thing we do every night, Pinky. Try to take over the world!
Take over world
Do laundry
P: Gee, Brain, what do you want to do tonight?
B: The same thing we do every night, Pinky. Try to take over the world!
P: Gee, Brain, what do you want to do tonight?
B: The same thing we do every night, Pinky. Try to take over the world!
Take over world
Do laundry
Gee, Brain, what do you want to do tonight?
The same thing we do every night, Pinky. Try to take over the world!
Pinky
Gee, Brain, what do you want to do tonight?
Brain
The same thing we do every night, Pinky. Try to take over the world!
Brain <brain@binkyandthebrain.com>
Pinky <pinky@binkyandthebrain.com>
On the list:
Fight the good fight
(Steve Martin joke)
Not so much
1 + 1 = 2;
2 + 2 = 4;
EOHTML
initialize($parser, $results);
$parser->parse_string_document(<<'EOPOD');
=pod
A plain paragraph with a CA plain paragraph with a functionname
.
This code is important to <me>!
A plain paragraph with body tags turned on.
EOHTML initialize($parser, $results); $parser->html_css('style.css'); $parser->html_header(undef); $parser->html_footer(undef); $parser->parse_string_document(<<'EOPOD'); =pod A plain paragraph with body tags and css tags turned on. EOPOD like($results, qr//, "adding html body tags and css tags"); initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =pod A plain paragraph with SA plain paragraph with non breaking text.
EOHTML initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =pod A plain paragraph with a LA plain paragraph with a Newlines.
EOHTML initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =pod A plain paragraph with a LA plain paragraph with a "Newlines" in perlport.
EOHTML initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =pod A plain paragraph with a LA plain paragraph with a Boo.
EOHTML initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =pod A plain paragraph with a LA plain paragraph with a http://link.included.here.
EOHTML initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =pod A plain paragraph with a LA plain paragraph with a http://link.included.here?o=1&p=2.
EOHTML initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =pod A plain paragraph with BA plain paragraph with bold text.
EOHTML initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =pod A plain paragraph with IA plain paragraph with italic text.
EOHTML initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =pod A plain paragraph with a FA plain paragraph with a filename.
EOHTML # It's not important that 's (apostrophes) be encoded for XHTML output. initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =pod # this header is very important & dont you forget it my $text = "File is: " . # this header is very important & dont you forget it
my \$text = "File is: " . <FILE>;
EOHTML
initialize($parser, $results);
$parser->parse_string_document(<<'EOPOD');
=pod
A text paragraph using EA text paragraph using / and | special POD entities.
EOHTML initialize($parser, $results); $parser->parse_string_document(<<'EOPOD'); =pod A text paragraph using numeric POD entities: E<60>, E<62>. EOPOD is($results, <<"EOHTML", "Text with numeric entities");A text paragraph using numeric POD entities: <, >.
EOHTML my $html = q{#include <stdio.h> int main(int argc,char *argv[]) { printf("Hellow World\n"); return 0; }}; initialize($parser, $results); $parser->parse_string_document("=begin html\n\n$html\n\n=end html\n"); is($results, "$html\n\n", "Text with =begin html"); SKIP: for my $use_html_entities (0, 1) { if ($use_html_entities and not $Pod::Simple::XHTML::HAS_HTML_ENTITIES) { skip("HTML::Entities not installed", 3); } local $Pod::Simple::XHTML::HAS_HTML_ENTITIES = $use_html_entities; initialize($parser, $results); $parser->codes_in_verbatim(1); $parser->parse_string_document(<<'EOPOD'); =pod # this header is very important & dont you forget it B
# this header is very important & dont you forget it
my \$file = <FILE> || Blank!;
my \$text = "File is: " . <FILE>;
EOHTML
# Specify characters to encode.
initialize($parser, $results);
$parser->html_encode_chars('><"&T');
$parser->parse_string_document(<<'EOPOD');
=pod
This is Anna's "Answer" to the Question. =cut EOPOD my $T = $use_html_entities ? ord('T') : sprintf ("x%X", ord('T')); is($results, <<"EOHTML", 'HTML Entities should be only for specified characters');
$T;his is Anna's "Answer" to the <q>Question</q>.
EOHTML # Keep =encoding out of content. initialize($parser, $results); $parser->parse_string_document("=encoding ascii\n\n=head1 NAME\n"); is($results, <<"EOHTML", 'Encoding should not be in content')