From f1a3e8eb41c882a85a995d620544852ca11d1708 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Sven=20Sch=C3=B6ling?= Date: Thu, 21 Jan 2010 16:12:06 +0100 Subject: [PATCH] Test um tags in tempaltes zu finden. --- t/004template.t | 108 ++++++------------------------------------------ 1 file changed, 12 insertions(+), 96 deletions(-) diff --git a/t/004template.t b/t/004template.t index becc6075d..403e18550 100644 --- a/t/004template.t +++ b/t/004template.t @@ -33,13 +33,12 @@ use lib 't'; use Support::Templates; -# Bug 137589 - Disable command-line input of CGI.pm when testing -use CGI qw(-no_debug); - use File::Spec; +use File::Slurp; use Template; -use Test::More tests => ( scalar(@referenced_files) * scalar(@languages) - + $num_actual_files ); +use Test::More tests => ( scalar(@referenced_files)); + +my $template_path = 'templates/webpages/'; # Capture the TESTOUT from Test::More or Test::Builder for printing errors. # This will handle verbosity for us automatically. @@ -55,98 +54,15 @@ my $fh; } } -# Checks whether one of the passed files exists -sub existOnce { - foreach my $file (@_) { - return $file if -e $file; - } - return 0; -} - -# Check to make sure all templates that are referenced in -# Bugzilla exist in the proper place. - -foreach my $lang (@languages) { - foreach my $file (@referenced_files) { - my @path = map(File::Spec->catfile($_, $file), - split(':', $include_path{$lang} . ":" . $include_path{"en"})); - if (my $path = existOnce(@path)) { - ok(1, "$path exists"); - } else { - ok(0, "$file cannot be located --ERROR"); - print $fh "Looked in:\n " . join("\n ", @path) . "\n"; - } - } -} - -foreach my $include_path (@include_paths) { - # Processes all the templates to make sure they have good syntax - my $provider = Template::Provider->new( - { - INCLUDE_PATH => $include_path , - # Need to define filters used in the codebase, they don't - # actually have to function in this test, just be defined. - # See Template.pm for the actual codebase definitions. - - # Initialize templates (f.e. by loading plugins like Hook). - PRE_PROCESS => "global/initialize.none.tmpl", - - FILTERS => - { - html_linebreak => sub { return $_; }, - no_break => sub { return $_; } , - js => sub { return $_ } , - base64 => sub { return $_ } , - inactive => [ sub { return sub { return $_; } }, 1] , - closed => [ sub { return sub { return $_; } }, 1] , - obsolete => [ sub { return sub { return $_; } }, 1] , - url_quote => sub { return $_ } , - css_class_quote => sub { return $_ } , - xml => sub { return $_ } , - quoteUrls => sub { return $_ } , - bug_link => [ sub { return sub { return $_; } }, 1] , - csv => sub { return $_ } , - unitconvert => sub { return $_ }, - time => sub { return $_ } , - wrap_comment => sub { return $_ }, - none => sub { return $_ } , - ics => [ sub { return sub { return $_; } }, 1] , - }, - } - ); - - foreach my $file (@{$actual_files{$include_path}}) { - my $path = File::Spec->catfile($include_path, $file); - if (-e $path) { - my ($data, $err) = $provider->fetch($file); - - if (!$err) { - ok(1, "$file syntax ok"); - } - else { - ok(0, "$file has bad syntax --ERROR"); - print $fh $data . "\n"; - } - } - else { - ok(1, "$path doesn't exist, skipping test"); - } +# test master files for tag +foreach my $ref (@Support::Templates::referenced_files) { + my $file = "${template_path}${ref}_master.html"; + my $data = read_file($file) || die "??? couldn't open $file"; + if ($data =~ //) { + ok(0, "$file uses deprecated tags."); + } else { + ok(1, "$file does not use tags."); } - - # check to see that all templates have a version string: - # disabled for lx-office - -# foreach my $file (@{$actual_files{$include_path}}) { -# my $path = File::Spec->catfile($include_path, $file); -# open(TMPL, $path); -# my $firstline = ; -# if ($firstline =~ /\d+\.\d+\@[\w\.-]+/) { -# ok(1,"$file has a version string"); -# } else { -# ok(0,"$file does not have a version string --ERROR"); -# } -# close(TMPL); -# } } exit 0; -- 2.20.1