Linux dpw.dpwebtech.com 3.10.0-1160.88.1.el7.x86_64 #1 SMP Tue Mar 7 15:41:52 UTC 2023 x86_64
Apache
: 192.232.243.69 | : 216.73.216.25
46 Domain
7.2.34
dpclient
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
.cpanplus /
5.16.3 /
build /
Template-Toolkit-3.009 /
t /
[ HOME SHELL ]
Name
Size
Permission
Action
lib
[ DIR ]
drwxr-xr-x
test
[ DIR ]
drwxr-xr-x
vmethods
[ DIR ]
drwxr-xr-x
README
3.15
KB
-rw-r--r--
anycase.t
2.16
KB
-rw-r--r--
args.t
2.41
KB
-rw-r--r--
assert.t
2.53
KB
-rw-r--r--
base.t
3.58
KB
-rw-r--r--
binop.t
4.82
KB
-rw-r--r--
block.t
2.71
KB
-rw-r--r--
block_duplicate.t
476
B
-rw-r--r--
blocks.t
2.2
KB
-rw-r--r--
capture.t
1.59
KB
-rw-r--r--
case.t
1.46
KB
-rw-r--r--
cgi.t
2.11
KB
-rw-r--r--
chomp.t
7.71
KB
-rw-r--r--
compile1.t
2.12
KB
-rw-r--r--
compile2.t
2.67
KB
-rw-r--r--
compile3.t
3.75
KB
-rw-r--r--
compile4.t
2.38
KB
-rw-r--r--
compile5.t
3.28
KB
-rw-r--r--
config.t
6.46
KB
-rw-r--r--
constants.t
5.07
KB
-rw-r--r--
context.t
5.87
KB
-rw-r--r--
datafile.t
1.63
KB
-rw-r--r--
date.t
6.73
KB
-rw-r--r--
date_offset.t
2.17
KB
-rw-r--r--
debug.t
3.86
KB
-rw-r--r--
directive.t
4.76
KB
-rw-r--r--
directry.t
5.48
KB
-rw-r--r--
document.t
3.57
KB
-rw-r--r--
dumper.t
1.34
KB
-rw-r--r--
error.t
953
B
-rw-r--r--
evalperl.t
3.73
KB
-rw-r--r--
exception.t
1.52
KB
-rw-r--r--
factory.t
1.4
KB
-rw-r--r--
file.t
2.87
KB
-rw-r--r--
fileline.t
2.96
KB
-rw-r--r--
filter.t
17.76
KB
-rw-r--r--
foreach.t
10.32
KB
-rw-r--r--
format.t
1.8
KB
-rw-r--r--
html.t
2.51
KB
-rw-r--r--
image.t
2.22
KB
-rw-r--r--
include.t
6.04
KB
-rw-r--r--
iterator.t
3.67
KB
-rw-r--r--
leak.t
5.01
KB
-rw-r--r--
list.t
4.41
KB
-rw-r--r--
macro.t
2.93
KB
-rw-r--r--
math.t
1.22
KB
-rw-r--r--
math_rand.t
476
B
-rw-r--r--
mtime-zero.t
1.04
KB
-rw-r--r--
object.t
7.23
KB
-rw-r--r--
outline.t
2.29
KB
-rw-r--r--
output.t
2.66
KB
-rw-r--r--
parser.t
4.74
KB
-rw-r--r--
parser2.t
981
B
-rw-r--r--
plugins.t
6.12
KB
-rw-r--r--
plusfile.t
1.91
KB
-rw-r--r--
pod.t
2.05
KB
-rw-r--r--
prefix.t
1.46
KB
-rw-r--r--
proc.t
867
B
-rw-r--r--
process-relative.t
2.05
KB
-rw-r--r--
process.t
1.88
KB
-rw-r--r--
process_dir.t
1.84
KB
-rw-r--r--
provider.t
11.08
KB
-rw-r--r--
ref.t
1.63
KB
-rw-r--r--
scalar.t
2.56
KB
-rw-r--r--
service.t
5.07
KB
-rw-r--r--
skel.t
947
B
-rw-r--r--
stash-xs-unicode.t
1.83
KB
-rw-r--r--
stash-xs.t
8.23
KB
-rw-r--r--
stash.t
7.91
KB
-rw-r--r--
stashc.t
1.6
KB
-rw-r--r--
stop.t
2.53
KB
-rw-r--r--
strcat.t
758
B
-rw-r--r--
strict.t
1.52
KB
-rw-r--r--
string.t
7.38
KB
-rw-r--r--
switch.t
3.83
KB
-rw-r--r--
table.t
2.68
KB
-rw-r--r--
tags.t
3.43
KB
-rw-r--r--
template.t
1.49
KB
-rw-r--r--
text.t
2.89
KB
-rw-r--r--
throw.t
1.94
KB
-rw-r--r--
tiedhash.t
5.09
KB
-rw-r--r--
trace_vars.t
1.11
KB
-rw-r--r--
try.t
9.83
KB
-rw-r--r--
unicode.t
4.55
KB
-rw-r--r--
url.t
4.08
KB
-rw-r--r--
vars.t
11.36
KB
-rw-r--r--
varsv1.t
8.96
KB
-rw-r--r--
view.t
17.43
KB
-rw-r--r--
while.t
3.18
KB
-rw-r--r--
wrap.t
2.65
KB
-rw-r--r--
wrapper.t
3.95
KB
-rw-r--r--
zz-plugin-cycle.t
1.36
KB
-rw-r--r--
zz-plugin-leak-gh-213.t
2.77
KB
-rw-r--r--
zz-plugin-leak-rt-46691.t
2.95
KB
-rw-r--r--
zz-plugin-leak.t
2.02
KB
-rw-r--r--
zz-pmv.t
1.15
KB
-rw-r--r--
zz-pod-coverage.t
1.64
KB
-rw-r--r--
zz-pod-kwalitee.t
776
B
-rw-r--r--
zz-stash-xs-leak.t
1.59
KB
-rw-r--r--
zz-url2.t
3.72
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : constants.t
#============================================================= -*-perl-*- # # t/constants.t # # Test constant folding via Template::Namespace::Constants # # Written by Andy Wardley <abw@andywardley.com> # # Copyright (C) 1996-2002 Andy Wardley. All Rights Reserved. # Copyright (C) 1998-2002 Canon Research Centre Europe Ltd. # # This is free software; you can redistribute it and/or modify it # under the same terms as Perl itself. # # $Id$ # #======================================================================== use strict; use lib qw( ./lib ../lib ); use Template::Test; use Template::Stash; use Template::Directive; use Template::Parser; use Template::Namespace::Constants; my $DEBUG = grep(/-d/, @ARGV); $Template::Namespace::Constants::DEBUG = $DEBUG; my $n = 0; my $constants = { author => 'Andy \'Da Man\' Wardley', single => 'foo\'bar', double => "foo'bar", joint => ', ', col => { back => '#ffffff', text => '#000000', }, counter => sub { $n++ }, }; my $namespace = Template::Namespace::Constants->new( $constants ); ok( $namespace, 'created constants namespace' ); is( $namespace->ident([ 'constants', 0, "'author'", 0 ]), q{'Andy \'Da Man\' Wardley'}, 'author match' ); is( $namespace->ident([ 'constants', 0, "'single'", 0 ]), "'foo\\'bar'", 'single match' ); is( $namespace->ident([ 'constants', 0, "'double'", 0 ]), "'foo\\'bar'", 'double match' ); is( $namespace->ident([ 'constants', 0, "'col'", 0, "'back'", 0 ]), "'#ffffff'", 'col.back match' ); is( $namespace->ident([ 'constants', 0, "'col'", 0, "'text'", 0 ]), "'#000000'", 'col.text match' ); my $factory = Template::Directive->new({ NAMESPACE => { const => $namespace, } }); ok( $factory, 'created Template::Directive factory' ); my $parser = Template::Parser->new( FACTORY => $factory ); ok( $parser, 'created Template::Parser parser' ); my $parsed = $parser->parse(<<EOF); hello [% const.author %] [% "back is \$const.col.back" %] and text is [% const.col.text %] but a col is still a [% col.user %] EOF die "parser error: ", $parser->error(), "\n" unless $parsed; my $text = $parsed->{ BLOCK }; ok( scalar $text =~ /'Andy \\'Da Man\\' Wardley'/, 'author folded' ); ok( scalar $text =~ /'back is ' . '#ffffff'/, 'col.back folded' ); ok( scalar $text =~ /stash->get\(\['col', 0, 'user', 0\]\)/, 'col.user unfolded' ); $parser = Template::Parser->new({ NAMESPACE => { const => $namespace, } }); ok( $parser, 'created Template::Parser parser' ); $parsed = $parser->parse(<<EOF); hello [% const.author %] [% "back is \$const.col.back" %] and text is [% const.col.text %] but a col is still a [% col.user %] EOF die "parser error: ", $parser->error(), "\n" unless $parsed; $text = $parsed->{ BLOCK }; ok( scalar $text =~ /'Andy \\'Da Man\\' Wardley'/, 'author folded' ); ok( scalar $text =~ /'back is ' . '#ffffff'/, 'col.back folded' ); ok( scalar $text =~ /stash->get\(\['col', 0, 'user', 0\]\)/, 'col.user unfolded' ); #------------------------------------------------------------------------ my $tt1 = Template->new({ NAMESPACE => { const => $namespace, }, }); ok( $tt1, 'created tt1' ); my $const2 = { author => 'abw', joint => ' is the new ', col => { back => 'orange', text => 'black', }, fave => 'back', }; my $tt2 = Template->new({ CONSTANTS => $const2, }); ok( $tt2, 'created tt2' ); my $tt3 = Template->new({ CONSTANTS => $const2, CONSTANTS_NAMESPACE => 'const', }); ok( $tt3, 'created tt3' ); my $engines = [ tt1 => $tt1, tt2 => $tt2, tt3 => $tt3 ]; my $vars = { col => { user => 'red', luza => 'blue', }, constants => $constants, }; test_expect(\*DATA, $engines, $vars); __DATA__ -- test -- hello [% const.author %] [% "back is $const.col.back" %] and text is [% const.col.text %] col.user is [% col.user %] -- expect -- hello Andy 'Da Man' Wardley back is #ffffff and text is #000000 col.user is red -- test -- # look ma! I can even call virtual methods on contants! [% const.col.keys.sort.join(', ') %] -- expect -- back, text -- test -- # and even pass constant arguments to constant virtual methods! [% const.col.keys.sort.join(const.joint) %] -- expect -- back, text -- test -- # my constants can be subs, etc. zero [% const.counter %] one [% const.counter %] -- expect -- zero 0 one 1 -- test -- -- use tt2 -- [% "$constants.author thinks " %] [%- constants.col.values.sort.reverse.join(constants.joint) %] -- expect -- abw thinks orange is the new black -- test -- -- use tt3 -- [% "$const.author thinks " -%] [% const.col.values.sort.reverse.join(const.joint) %] -- expect -- abw thinks orange is the new black -- test -- -- name no const.foo -- no [% const.foo %]? -- expect -- no ? -- test -- fave [% const.fave %] col [% const.col.${const.fave} %] -- expect -- fave back col orange -- test -- -- use tt2 -- -- name defer references -- [% "$key\n" FOREACH key = constants.col.keys.sort %] -- expect -- back text -- test -- -- use tt3 -- a: [% const.author %] b: [% const.author = 'Fred Smith' %] c: [% const.author %] -- expect -- a: abw b: c: abw
Close