HTML-Toc

 view release on metacpan or  search on metacpan

t/siteMap.t  view on Meta::CPAN

#--- manual.t -----------------------------------------------------------------
# function: Test HTML::ToC generating a manual.

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


use Data::Dumper;
use File::Find;
use HTML::Toc;
use HTML::TocGenerator;
use HTML::TocInsertor;
use HTML::TocUpdator;


	# Create objects
my $toc          = HTML::Toc->new();
my $tocGenerator = HTML::TocGenerator->new();
my @fileList;


#--- TestSiteMap() ------------------------------------------------------------
# function: Test specifying numbered list.

sub TestSiteMap {
		# Set ToC options
	$toc->setOptions({
		'doLinkToFile'       => 1,
		'templateAnchorName' => '""',
		'templateAnchorHref' => '"<a href=\"$file"."#".$groupId.$level."\">"',
		'doLinkTocToToken'   => 1,
		'tokenToToc'         => [{
			'groupId'         => 'dir',
			'level'           => 1,
			'tokenBegin'      => '<title>',
			'tokenEnd'        => '</title>',
			'fileSpec'        => '\./[^/]+$'
		}, {
			'groupId'         => 'dir',
			'level'           => 2,
			'tokenBegin'      => '<title>',
			'tokenEnd'        => '</title>',
			'fileSpec'        => '\./[^/]+?/[^/]+$'
		}, {
			'groupId'         => 'dir',
			'level'           => 3,
			'tokenBegin'      => '<title>',
			'tokenEnd'        => '</title>',
			'fileSpec'        => '\./[^/]+?/[^/]+?/[^/]+$'
		}]
	});
		# Change current directory
	chdir("t/SiteMap");
		# Find files, filling 'fileList'
	find({wanted => \&WantedSiteMap, no_chdir => 1}, '.');
		# Generate ToC of case-insensitively sorted file list
	$tocGenerator->extendFromFile(
		$toc, [sort {uc($a) cmp uc($b)} @fileList]
	);
		# Restore current directory
	chdir("../..");
		# Test ToC
	eq_or_diff($toc->format(), <<EOT, 'specifying numbered list', {max_width => 120});

<!-- Table of Contents generated by Perl - HTML::Toc -->



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