summaryrefslogtreecommitdiff
path: root/cpan/podlators/t/text/color.t
diff options
context:
space:
mode:
Diffstat (limited to 'cpan/podlators/t/text/color.t')
-rw-r--r--cpan/podlators/t/text/color.t117
1 files changed, 17 insertions, 100 deletions
diff --git a/cpan/podlators/t/text/color.t b/cpan/podlators/t/text/color.t
index c2e13335ad..b7edd48a27 100644
--- a/cpan/podlators/t/text/color.t
+++ b/cpan/podlators/t/text/color.t
@@ -1,114 +1,31 @@
-#!/usr/bin/perl -w
+#!/usr/bin/perl
#
-# color.t -- Additional specialized tests for Pod::Text::Color.
+# Test Pod::Text::Color behavior with various snippets.
#
-# Copyright 2002, 2004, 2006, 2009, 2012, 2013
+# Copyright 2002, 2004, 2006, 2009, 2012-2013, 2018
# Russ Allbery <rra@cpan.org>
#
# This program is free software; you may redistribute it and/or modify it
# under the same terms as Perl itself.
-BEGIN {
- chdir 't' if -d 't';
- if ($ENV{PERL_CORE}) {
- @INC = '../lib';
- }
- unshift (@INC, '../blib/lib');
- $| = 1;
-}
-
+use 5.006;
use strict;
+use warnings;
-use Test::More;
+use lib 't/lib';
-# Skip this test if Term::ANSIColor isn't available.
-eval { require Term::ANSIColor };
-if ($@) {
- plan skip_all => 'Term::ANSIColor required for Pod::Text::Color';
-} else {
- plan tests => 4;
-}
-require_ok ('Pod::Text::Color');
+use Test::More tests => 11;
+use Test::Podlators qw(test_snippet);
-# Load tests from the data section below, write the POD to a temporary file,
-# convert it, and compare to the expected output.
-my $parser = Pod::Text::Color->new;
-isa_ok ($parser, 'Pod::Text::Color', 'Parser object');
-my $n = 1;
-while (<DATA>) {
- next until $_ eq "###\n";
- open (TMP, "> tmp$$.pod") or die "Cannot create tmp$$.pod: $!\n";
- while (<DATA>) {
- last if $_ eq "###\n";
- print TMP $_;
- }
- close TMP;
- open (OUT, "> out$$.tmp") or die "Cannot create out$$.tmp: $!\n";
- $parser->parse_from_file ("tmp$$.pod", \*OUT);
- close OUT;
- open (TMP, "out$$.tmp") or die "Cannot open out$$.tmp: $!\n";
- my $output;
- {
- local $/;
- $output = <TMP>;
- }
- close TMP;
- 1 while unlink ("tmp$$.pod", "out$$.tmp");
- my $expected = '';
- while (<DATA>) {
- last if $_ eq "###\n";
- $expected .= $_;
- }
- is ($output, $expected, "Output correct for test $n");
- $n++;
+# Load the module.
+BEGIN {
+ use_ok('Pod::Text::Color');
}
-# Below the marker are bits of POD and corresponding expected output. This is
-# used to test specific features or problems with Pod::Text::Color. The input
-# and output are separated by lines containing only ###.
-
-__DATA__
-
-###
-=head1 WRAPPING
-
-B<I<Do>> I<B<not>> B<I<include>> B<I<formatting codes when>> B<I<wrapping>>.
-###
-WRAPPING
- Do not include formatting codes when wrapping.
-
-###
-
-###
-=head1 TAG WIDTH
-
-=over 10
-
-=item 12345678
+# List of snippets run by this test.
+my @snippets = qw(escape-wrapping tag-width tag-wrapping width wrapping);
-A
-
-=item B<12345678>
-
-B
-
-=item 1Z<>
-
-C
-
-=item B<1>
-
-D
-
-=back
-###
-TAG WIDTH
- 12345678 A
-
- 12345678 B
-
- 1 C
-
- 1 D
-
-###
+# Run all the tests.
+for my $snippet (@snippets) {
+ test_snippet('Pod::Text::Color', "color/$snippet");
+}