BBCode-Parser
view release on metacpan or search on metacpan
t/common.ph view on Meta::CPAN
# Defines some Perl functions for the *.t scripts
use strict;
use warnings;
sub P() {
no strict 'refs';
return ${(caller(1))[0].'::p'};
}
sub bbtest($$;$) {
my($src,$bbexpect,$htmlexpect);
if(@_ == 3) {
($src,$bbexpect,$htmlexpect) = @_;
} else {
($src,$htmlexpect) = @_;
$bbexpect = $src;
}
my $msg = $src;
$msg =~ s/\t/\\t/g;
$msg =~ s/\n/\\n/g;
my $tree = P->parse($src);
is($tree->toBBCode, $bbexpect, "$msg (BBCode)");
my $html = $tree->toHTML;
$html =~ s/'/'/g;
$html =~ s#^<div class="bbcode-body">\s*##;
$html =~ s#\s*</div>\s*$##;
$htmlexpect =~ s/^\s+|\s+$//g;
$htmlexpect =~ s/'/'/g;
is($html, $htmlexpect, "$msg (HTML)");
}
sub bbfail($) {
my($src) = @_;
my $msg = $src;
$msg =~ s/\t/\\t/g;
$msg =~ s/\n/\\n/g;
eval {
P->parse($src);
};
isnt("$@", "", "$msg (Failure)");
}
1;
# vim:set ft=perl:
( run in 2.055 seconds using v1.01-cache-2.11-cpan-5837b0d9d2c )