Text-Xslate
view release on metacpan - search on metacpan
view release on metacpan or search on metacpan
t/900_bugs/033_ex_safe_render.t view on Meta::CPAN
use strict;
use warnings;
use Test::More;
use File::Temp qw(tempdir);
{
package MyCounter;
sub new { my $class = shift;bless {@_} => $class }
sub incr { shift->{count}++ }
sub decr { shift->{count}-- }
sub count { shift->{count} }
}
use Text::Xslate;
my $tx = Text::Xslate->new(
cache => 1,
syntax => 'TTerse',
path => {
'recurse.tt' => q{
[%- MACRO mymacro BLOCK -%]
[%- CALL recurse_count.decr -%]
[%- IF recurse_count.count -%]
[%- mymacro() -%]
[%- END -%]
[%- END -%]
[%- mymacro() -%]
},
},
cache_dir => tempdir(CLEANUP => 1),
);
ok $tx->render('recurse.tt', { recurse_count => MyCounter->new(count => 101) });
eval {
$tx->render('recurse.tt', { recurse_count => MyCounter->new(count => 102) });
};
ok $tx->render('recurse.tt', { recurse_count => MyCounter->new(count => 101) });
done_testing;
view all matches for this distributionview release on metacpan - search on metacpan
( run in 2.515 seconds using v1.00-cache-2.02-grep-82fe00e-cpan-d29e8ade9f55 )