HTML-Toc

 view release on metacpan or  search on metacpan

t/generate.t  view on Meta::CPAN

#--- generate.t ---------------------------------------------------------------
# function: Test ToC generation.

use strict;
use Test::More tests => 14;
use Test::Differences;

use HTML::Toc;
use HTML::TocGenerator;

my ($filename);
my $toc          = HTML::Toc->new;
my $tocGenerator = HTML::TocGenerator->new;

$toc->setOptions({
	'doLinkToToken' => 0,
	'levelIndent'   => 0,
	'header'        => '',
	'footer'        => '',
});


BEGIN {
		# Create test file
	$filename = "file$$.htm";
	die "$filename is already there" if -e $filename;
	open(FILE, ">$filename") || die "Can't create $filename: $!";
	print FILE <<'EOT';
<h1>Header</h1>
EOT
	close(FILE);
}


END {
		# Remove test file
	unlink($filename) or warn "Can't unlink $filename: $!";
}


#--- 1. generate --------------------------------------------------------------

$tocGenerator->generate($toc, "<h1>Header</h1>");
eq_or_diff($toc->format(), "<ul>\n<li>Header</li>\n</ul>", 'generate');


#--- 2. generateFromFile ------------------------------------------------------

$tocGenerator->generateFromFile($toc, $filename);
eq_or_diff($toc->format(), "<ul>\n<li>Header</li>\n</ul>", 'generateFromFile');


#--- 3. generateFromFiles -----------------------------------------------------

$tocGenerator->generateFromFile($toc, [$filename, $filename]);
eq_or_diff($toc->format(), "<ul>\n<li>Header</li>\n<li>Header</li>\n</ul>", 'generateFromFiles');


#--- 4. doLinkToToken -----------------------------------------------------

$toc->setOptions({'doLinkToToken' => 1});
$tocGenerator->generateFromFile($toc, $filename, {'globalGroups' => 1});
eq_or_diff($toc->format(), "<ul>\n<li><a href=\"#h-1\">Header</a></li>\n</ul>", 'doLinkToToken');


#--- 5. doLinkToFile -------------------------------------------------------



( run in 1.172 second using v1.01-cache-2.11-cpan-e1769b4cff6 )