X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F017-default-reference.t;h=8d1a3540c0688a270c3182bd74ce0bd294afacf9;hb=8a3e5c5d45741e488e89d5130b5dcb44f2c6a6f4;hp=41d2593390a74abf3c62b4f21c194e0e9701337f;hpb=085c18e99e18eb6715c7d294603ff28bcbd6c4e7;p=gitmo%2FMouse.git diff --git a/t/017-default-reference.t b/t/017-default-reference.t index 41d2593..8d1a354 100644 --- a/t/017-default-reference.t +++ b/t/017-default-reference.t @@ -1,7 +1,7 @@ #!/usr/bin/env perl use strict; use warnings; -use Test::More tests => 8; +use Test::More tests => 9; use Test::Exception; do { @@ -48,3 +48,15 @@ is(ref(Class->new->code), 'CODE', "default => sub { sub { 1 } } stuffs a coderef is(Class->new->code->(), 1, "default => sub sub strips off the first coderef"); is_deeply(Class->new->a, [1], "default of sub { reference } works"); +do { + package Class::Two; + use Mouse; + has foo => (is => 'rw', default => sub { + die unless $_[0]->isa('Class::Two'); + shift->default_foo; + }); + sub default_foo { 1 }; +}; + +my $obj2 = Class::Two->new; +is($obj2->foo, 1, 'default method gets the $_[0] it needs to work');