Provide a way for Template to import old packages that have headBlock properties, with tests.

This commit is contained in:
Colin Kuskie 2008-12-10 18:29:18 +00:00
parent bb5ced3e0d
commit 09f7caab40
3 changed files with 42 additions and 4 deletions

View file

@ -15,7 +15,7 @@ use lib "$FindBin::Bin/../lib";
use WebGUI::Test;
use WebGUI::Session;
use WebGUI::Asset::Template;
use Test::More tests => 13; # increment this value for each test you create
use Test::More tests => 15; # increment this value for each test you create
use Test::Deep;
my $session = WebGUI::Test->session;
@ -23,19 +23,19 @@ my $session = WebGUI::Test->session;
my $list = WebGUI::Asset::Template->getList($session);
cmp_deeply($list, {}, 'getList with no classname returns an empty hashref');
my $template = " <tmpl_var variable> <tmpl_if conditional>true</tmpl_if> <tmpl_loop loop>XY</tmpl_loop> ";
my $tmplText = " <tmpl_var variable> <tmpl_if conditional>true</tmpl_if> <tmpl_loop loop>XY</tmpl_loop> ";
my %var = (
variable=>"AAAAA",
conditional=>1,
loop=>[{},{},{},{},{}]
);
my $output = WebGUI::Asset::Template->processRaw($session,$template,\%var);
my $output = WebGUI::Asset::Template->processRaw($session,$tmplText,\%var);
ok($output =~ m/\bAAAAA\b/, "processRaw() - variables");
ok($output =~ m/true/, "processRaw() - conditionals");
ok($output =~ m/\s(?:XY){5}\s/, "processRaw() - loops");
my $importNode = WebGUI::Asset::Template->getImportNode($session);
my $template = $importNode->addChild({className=>"WebGUI::Asset::Template", title=>"test", url=>"testingtemplates", template=>$template, namespace=>'WebGUI Test Template'});
my $template = $importNode->addChild({className=>"WebGUI::Asset::Template", title=>"test", url=>"testingtemplates", template=>$tmplText, namespace=>'WebGUI Test Template'});
isa_ok($template, 'WebGUI::Asset::Template', "creating a template");
is($template->get('parser'), 'WebGUI::Asset::Template::HTMLTemplate', 'default parser is HTMLTemplate');
@ -57,6 +57,18 @@ is($template->get('isDefault'), 1, 'isDefault set to 1');
my $templateCopy = $template->duplicate();
is($templateCopy->get('isDefault'), 0, 'isDefault set to 0 on copy');
my $template3 = $importNode->addChild({
className => "WebGUI::Asset::Template",
title => 'headBlock test',
headBlock => "tag1 tag2 tag3",
template => "this is a template",
});
ok(!$template3->get('headBlock'), 'headBlock is empty');
is($template3->get('extraHeadTags'), 'tag1 tag2 tag3', 'extraHeadTags contains headBlock info');
$template->purge;
$templateCopy->purge;
$template3->purge;
WebGUI::VersionTag->getWorking($session)->rollback;