X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Faccessor-isa.t;h=1e8f88fe30223cd464deea77c044b432ed62d698;hb=55d91f641bc43e5f929e35dc653a3aeea2497db8;hp=2e3e9fdd3b77d59450c739a0adcac16ee476820b;hpb=6d377074a6632b1dd9468ee474040047bec31c7a;p=gitmo%2FMoo.git diff --git a/t/accessor-isa.t b/t/accessor-isa.t index 2e3e9fd..1e8f88f 100644 --- a/t/accessor-isa.t +++ b/t/accessor-isa.t @@ -7,36 +7,37 @@ sub run_for { my $obj = $class->new(less_than_three => 1); - is($obj->less_than_three, 1, 'initial value set'); + is($obj->less_than_three, 1, "initial value set (${class})"); like( exception { $obj->less_than_three(4) }, - qr/4 is not less than three/, 'exception thrown on bad set' + qr/4 is not less than three/, "exception thrown on bad set (${class})" ); - is($obj->less_than_three, 1, 'initial value remains after bad set'); + is($obj->less_than_three, 1, "initial value remains after bad set (${class})"); my $ret; is( exception { $ret = $obj->less_than_three(2) }, - undef, 'no exception on correct set' + undef, "no exception on correct set (${class})" ); - is($ret, 2, 'correct setter return'); - is($obj->less_than_three, 2, 'correct getter return'); + is($ret, 2, "correct setter return (${class})"); + is($obj->less_than_three, 2, "correct getter return (${class})"); - is(exception { $class->new }, undef, 'no exception with no value'); + is(exception { $class->new }, undef, "no exception with no value (${class})"); like( exception { $class->new(less_than_three => 12) }, - qr/12 is not less than three/, 'exception thrown on bad constructor arg' + qr/12 is not less than three/, + "exception thrown on bad constructor arg (${class})" ); } { package Foo; - use Class::Tiny; + use Moo; has less_than_three => ( is => 'rw', @@ -50,11 +51,14 @@ run_for 'Foo'; package Bar; use Sub::Quote; - use Class::Tiny; + use Moo; has less_than_three => ( is => 'rw', - isa => quote_sub q{ die "$_[0] is not less than three" unless $_[0] < 3 } + isa => quote_sub q{ + my ($x) = @_; + die "$x is not less than three" unless $x < 3 + } ); } @@ -64,12 +68,15 @@ run_for 'Bar'; package Baz; use Sub::Quote; - use Class::Tiny; + use Moo; has less_than_three => ( is => 'rw', isa => quote_sub( - q{ die "$_[0] is not less than ${word}" unless $_[0] < $limit }, + q{ + my ($value) = @_; + die "$value is not less than ${word}" unless $value < $limit + }, { '$limit' => \3, '$word' => \'three' } ) );