-# 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");
- }