Object-Lazy

 view release on metacpan or  search on metacpan

t/15_test_examples.t  view on Meta::CPAN

#!perl

use strict;
use warnings;

use Test::More;
use Test::Differences;
use Cwd qw(getcwd chdir);
use English qw(-no_match_vars $CHILD_ERROR);

$ENV{AUTHOR_TESTING} or plan(
    skip_all => 'Set $ENV{AUTHOR_TESTING} to run this test.'
);

plan(tests => 6);

my @data = (
    {
        test   => '01_short_constructor',
        path   => 'example',
        script => '-I../lib -T 01_short_constructor.pl',
        result => <<'EOT',
condition = 0
object = Object::Lazy=HASH(...)
$my_dump = 'data';
condition = 1
object = Data::Dumper=HASH(...)
EOT
    },
    {
        test   => '02_extended_constructor',
        path   => 'example',
        script => '-I../lib -T 02_extended_constructor.pl',
        result => <<'EOT',
condition = 0
object = Object::Lazy=HASH(...)
Data::Dumper object built at ../lib/Object/Lazy.pm line 35.
\tObject::Lazy::try {...} () called at Perl/site/lib/Try/Tiny.pm line
\teval {...} called at Perl/site/lib/Try/Tiny.pm line
\tTry::Tiny::try(CODE(...), Try::Tiny::Catch=REF(...)) called at ../lib/Object/Lazy.pm line 39
\tObject::Lazy::BUILD_OBJECT(Data::Dumper=HASH(...), REF(...)) called at ../lib/Object/Lazy.pm line 53
\tObject::Lazy::AUTOLOAD(Data::Dumper=HASH(...)) called at 02_extended_constructor.pl line 29
\tmain::do_something_with(Data::Dumper=HASH(...), 1) called at 02_extended_constructor.pl line 45
$my_dump = 'data';
condition = 1
object = Data::Dumper=HASH(...)
EOT
    },
    {
        test   => '03_isa',
        path   => 'example',
        script => '-I../lib -T 03_isa.pl',
        result => <<'EOT',
1 = $object->isa('RealClass');
1 = $object->isa('BaseClassOfRealClass');
RealClass object built at ../lib/Object/Lazy.pm line 35.
\tObject::Lazy::try {...} () called at Perl/site/lib/Try/Tiny.pm line
\teval {...} called at Perl/site/lib/Try/Tiny.pm line
\tTry::Tiny::try(CODE(...), Try::Tiny::Catch=REF(...)) called at ../lib/Object/Lazy.pm line 39
\tObject::Lazy::BUILD_OBJECT(RealClass=HASH(...), REF(...)) called at ../lib/Object/Lazy.pm line 53
\tObject::Lazy::AUTOLOAD(RealClass=HASH(...)) called at 03_isa.pl line 38
# Method output called!
EOT
    },
    {
        test   => '04_DOES',
        path   => 'example',



( run in 1.780 second using v1.01-cache-2.11-cpan-39bf76dae61 )