diff options
author | gregor herrmann <gregoa@debian.org> | 2020-02-22 17:54:17 +0100 |
---|---|---|
committer | gregor herrmann <gregoa@debian.org> | 2020-02-22 17:54:17 +0100 |
commit | e543b036515975c9c700a4eca72925653a2d44c2 (patch) | |
tree | 2e6cbbf8f9bde20425fd80ca243c91327ff8bcd4 | |
parent | 57e23ada047a72bf757174b2624966746abc4ad7 (diff) |
New upstream version 0.09
-rw-r--r-- | Changes | 4 | ||||
-rw-r--r-- | META.json | 4 | ||||
-rw-r--r-- | META.yml | 4 | ||||
-rw-r--r-- | lib/Package/New.pm | 8 | ||||
-rw-r--r-- | perl-Package-New.spec | 2 | ||||
-rw-r--r-- | t/002_base.t | 50 | ||||
-rw-r--r-- | t/003_dump.t | 75 |
7 files changed, 101 insertions, 46 deletions
@@ -1,5 +1,9 @@ Revision history for Perl module Package::New +0.09 2020-02-17 + - Updated lib/Package/New.pm - fixed testing coverage issue + - Updated t/002_base.t and t/003_dump.t - added testing coverage + 0.08 2019-12-14 - Updated t/001_load.t - Added test cases from cpancover.com - Added t/004_dump.t - Added test cases from cpancover.com @@ -4,7 +4,7 @@ "Michael R. Davis (mdavis@stopllc.com)" ], "dynamic_config" : 1, - "generated_by" : "ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.120351", + "generated_by" : "ExtUtils::MakeMaker version 6.68, CPAN::Meta::Converter version 2.120921", "license" : [ "unknown" ], @@ -38,5 +38,5 @@ } }, "release_status" : "stable", - "version" : "0.08" + "version" : "0.09" } @@ -7,7 +7,7 @@ build_requires: configure_requires: ExtUtils::MakeMaker: 0 dynamic_config: 1 -generated_by: 'ExtUtils::MakeMaker version 6.98, CPAN::Meta::Converter version 2.120351' +generated_by: 'ExtUtils::MakeMaker version 6.68, CPAN::Meta::Converter version 2.120921' license: unknown meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html @@ -20,4 +20,4 @@ no_index: requires: Devel::Hide: 0 Test::Simple: 0.44 -version: 0.08 +version: 0.09 diff --git a/lib/Package/New.pm b/lib/Package/New.pm index c98948d..760048a 100644 --- a/lib/Package/New.pm +++ b/lib/Package/New.pm @@ -2,7 +2,7 @@ package Package::New; use strict; use warnings; -our $VERSION='0.08'; +our $VERSION='0.09'; =head1 NAME @@ -63,9 +63,9 @@ I recommend Lazy Loading where you can. =cut sub new { - my $this=shift; - my $class=ref($this) || $this; - my $self={}; + my $this = shift; + my $class = ref($this) ? ref($this) : $this; + my $self = {}; bless $self, $class; $self->initialize(@_); return $self; diff --git a/perl-Package-New.spec b/perl-Package-New.spec index 232a9e4..6535134 100644 --- a/perl-Package-New.spec +++ b/perl-Package-New.spec @@ -1,5 +1,5 @@ Name: perl-Package-New -Version: 0.08 +Version: 0.09 Release: 1%{?dist} Summary: Simple base package from which to inherit License: BSD diff --git a/t/002_base.t b/t/002_base.t index ae2d4a1..007ced2 100644 --- a/t/002_base.t +++ b/t/002_base.t @@ -2,21 +2,45 @@ use strict; use warnings; -use Test::More tests => 6; +use Test::More tests => 16; BEGIN { use_ok( 'Package::New' ); } -my $object = My::Package->new(x=>1, y=>"a"); -isa_ok($object, 'Package::New'); -isa_ok($object, 'My::Package'); +{ + my $object = My::Package->new(x=>1, y=>"a"); + isa_ok($object, 'Package::New'); + isa_ok($object, 'My::Package'); -can_ok($object, qw{new initialize x y}); -is($object->x, "1", "args work"); -is($object->y, "a", "args work"); + can_ok($object, qw{new initialize x y}); + is($object->x, "1", "args work"); + is($object->y, "a", "args work"); +} -package #Hide from CPAN -My::Package; -use base qw{Package::New}; -sub x {shift->{"x"}}; -sub y {shift->{"y"}}; -1; +{ + my $object = My::Package->new(x=>undef)->new(x=>1, y=>"a"); + isa_ok($object, 'Package::New'); + isa_ok($object, 'My::Package'); + + can_ok($object, qw{new initialize x y}); + is($object->x, "1", "args work"); + is($object->y, "a", "args work"); +} + +{ + my $object = new My::Package x=>1, y=>"a"; + isa_ok($object, 'Package::New'); + isa_ok($object, 'My::Package'); + + can_ok($object, qw{new initialize x y}); + is($object->x, "1", "args work"); + is($object->y, "a", "args work"); +} + +{ + package #Hide from CPAN + My::Package; + use base qw{Package::New}; + sub x {shift->{"x"}}; + sub y {shift->{"y"}}; + 1; +} diff --git a/t/003_dump.t b/t/003_dump.t index 02a61ad..3c1212d 100644 --- a/t/003_dump.t +++ b/t/003_dump.t @@ -2,7 +2,7 @@ use strict; use warnings; -use Test::More tests => 12; +use Test::More tests => 17; BEGIN { use_ok( 'Package::New::Dump' ); } @@ -20,30 +20,57 @@ is(Bar->bar, "baz", "class method"); is($object->baz, "buz", "object method"); is(Bar->baz, "buz", "class method"); -if ($ENV{"DEVELOPER"}) { - diag("Dump Level 1"); - diag($object->dump(1)); - diag("Dump Level default"); - diag($object->dump); - diag("Dump Level 2"); - diag($object->dump(2)); - diag("Dump Level 3"); - diag($object->dump(3)); - diag("Dump Level 4"); - diag($object->dump(4)); - diag("Dump Level 0"); - diag($object->dump(0)); +{ + my $dump = $object->dump(1); + diag($dump); + $dump =~ s/\s+//g; #white space compress + $dump =~ s/0x[0-9a-f]+/XXX/; + is($dump, q{$VAR1=bless({'one'=>'HASH(XXX)'},'Bar');}); } -package #hide -Foo; -use base qw{Package::New::Dump}; -sub bar {"baz"}; -1; +{ + my $dump = $object->dump(); + diag($dump); + $dump =~ s/\s+//g; #white space compress + $dump =~ s/0x[0-9a-f]+/XXX/; + is($dump, q{$VAR1=bless({'one'=>{'two'=>'HASH(XXX)'}},'Bar');}); +} -package #hide -Bar; -use base qw{Foo}; -sub baz {"buz"}; -1; +{ + my $dump = $object->dump(undef); + diag($dump); + $dump =~ s/\s+//g; #white space compress + $dump =~ s/0x[0-9a-f]+/XXX/; + is($dump, q{$VAR1=bless({'one'=>{'two'=>'HASH(XXX)'}},'Bar');}); +} +{ + my $dump = $object->dump(2); + diag($dump); + $dump =~ s/\s+//g; #white space compress + $dump =~ s/0x[0-9a-f]+/XXX/; + is($dump, q{$VAR1=bless({'one'=>{'two'=>'HASH(XXX)'}},'Bar');}); +} + +{ + my $dump = $object->dump(0); + diag($dump); + $dump =~ s/\s+//g; #white space compress + is($dump, q{$VAR1=bless({'one'=>{'two'=>{'three'=>{'four'=>{}}}}},'Bar');}); +} + +{ + package #hide + Foo; + use base qw{Package::New::Dump}; + sub bar {"baz"}; + 1; +} + +{ + package #hide + Bar; + use base qw{Foo}; + sub baz {"buz"}; + 1; +} |