CGI-AppToolkit

 view release on metacpan or  search on metacpan

t/template-test1.t  view on Meta::CPAN

#!/usr/bin/perl -w
$| = 1;
use ExtUtils::testlib;

use CGI::AppToolkit;
use strict;

BEGIN {
	print "1..72\n";
}

my $V = 1;

sub compare {
	my $num = shift;
	my $value = shift;
	my $should_be = shift;
	
	my ($filename, $line) = (caller)[1,2];
	
	if ($value eq $should_be) {
		print "'$value'\n" if $V > 1;
		print "ok $num Line: " . $line . "\n";
	} else {
		print "'$value'\nshould be: '$should_be'\n\tat line: $line of file '$filename'\n" if $V;
		print "not ok $num\n";
	}
}

local $^W = 0;

my $T = 1;

my $kit = CGI::AppToolkit->new();

#test text and token 
{
	my $temp = $kit->template(-set => 'Token: {?$token?}');
	compare($T++, $temp->make({'token' => 'token'}), 'Token: token');
}

#test text and token 
{
	my $temp = $kit->template(-set => 'Token: {?$token?}');
	compare($T++, $temp->make({'token' => undef}), 'Token: ');
}

#test text and decision node 
{
	my $temp = $kit->template(-set => 'Decision: {?if $token --?}YES{?-- $token ?}');
	compare($T++, $temp->make({'token' => '01'}),  'Decision: YES');
	compare($T++, $temp->make({'token' => 01}),    'Decision: YES');
	compare($T++, $temp->make({'token' => '0x1'}), 'Decision: YES');
	compare($T++, $temp->make({'token' => undef}), 'Decision: ');
	compare($T++, $temp->make({'token' => ''}),    'Decision: ');
	compare($T++, $temp->make({'token' => '0'}),   'Decision: ');
	compare($T++, $temp->make({'token' => 0}),     'Decision: ');
}

{
	my $temp = $kit->template(-set => 'Decision elsif: {?if $token --?}YES{?-- $token --?}NO{?-- $token ?}');
	compare($T++,  $temp->make({'token' => '01'}),  'Decision elsif: YES');
	compare($T++, $temp->make({'token' => 01}),    'Decision elsif: YES');
	compare($T++, $temp->make({'token' => '0x1'}), 'Decision elsif: YES');
	compare($T++, $temp->make({'token' => undef}), 'Decision elsif: NO');
	compare($T++, $temp->make({'token' => ''}),    'Decision elsif: NO');
	compare($T++, $temp->make({'token' => '0'}),   'Decision elsif: NO');
	compare($T++, $temp->make({'token' => 0}),     'Decision elsif: NO');
}

{
	my $temp = $kit->template(-set => 'Decision eq: {?if $token=1 --?}YES{?-- $token --?}NO{?-- $token ?}');
	compare($T++, $temp->make({'token' => '01'}),  'Decision eq: YES');
	compare($T++, $temp->make({'token' => 01}),    'Decision eq: YES');
	compare($T++, $temp->make({'token' => '1x1'}), 'Decision eq: YES');
	compare($T++, $temp->make({'token' => undef}), 'Decision eq: NO');
	compare($T++, $temp->make({'token' => '100'}), 'Decision eq: NO');
	compare($T++, $temp->make({'token' => '0x1'}), 'Decision eq: NO');
	compare($T++, $temp->make({'token' => 0}),     'Decision eq: NO');



( run in 1.160 second using v1.01-cache-2.11-cpan-364913b4093 )