X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F020_attributes%2F019_attribute_lazy_initializer.t;h=06f631f127538c1ec6391ecc3dcd7016d32dd882;hb=d03bd989b97597428b460d7f9a021e2931893fa0;hp=6735822b29baef51c78650235de3794b9eadaf10;hpb=f6bee6fe1d579dc3d2ed2952cce9a1556040c8e5;p=gitmo%2FMoose.git diff --git a/t/020_attributes/019_attribute_lazy_initializer.t b/t/020_attributes/019_attribute_lazy_initializer.t index 6735822..06f631f 100644 --- a/t/020_attributes/019_attribute_lazy_initializer.t +++ b/t/020_attributes/019_attribute_lazy_initializer.t @@ -11,16 +11,16 @@ use Test::Exception; { package Foo; use Moose; - + has 'foo' => ( reader => 'get_foo', writer => 'set_foo', initializer => sub { my ($self, $value, $callback, $attr) = @_; - + ::isa_ok($attr, 'Moose::Meta::Attribute'); ::is($attr->name, 'foo', '... got the right name'); - + $callback->($value * 2); }, ); @@ -31,14 +31,14 @@ use Test::Exception; default => 10, initializer => sub { my ($self, $value, $callback, $attr) = @_; - + ::isa_ok($attr, 'Moose::Meta::Attribute'); - ::is($attr->name, 'lazy_foo', '... got the right name'); - + ::is($attr->name, 'lazy_foo', '... got the right name'); + $callback->($value * 2); }, ); - + has 'lazy_foo_w_type' => ( reader => 'get_lazy_foo_w_type', isa => 'Int', @@ -46,43 +46,43 @@ use Test::Exception; default => 20, initializer => sub { my ($self, $value, $callback, $attr) = @_; - + ::isa_ok($attr, 'Moose::Meta::Attribute'); - ::is($attr->name, 'lazy_foo_w_type', '... got the right name'); - + ::is($attr->name, 'lazy_foo_w_type', '... got the right name'); + $callback->($value * 2); }, - ); - + ); + has 'lazy_foo_builder' => ( reader => 'get_lazy_foo_builder', builder => 'get_foo_builder', initializer => sub { my ($self, $value, $callback, $attr) = @_; - + ::isa_ok($attr, 'Moose::Meta::Attribute'); - ::is($attr->name, 'lazy_foo_builder', '... got the right name'); - + ::is($attr->name, 'lazy_foo_builder', '... got the right name'); + $callback->($value * 2); }, ); - + has 'lazy_foo_builder_w_type' => ( reader => 'get_lazy_foo_builder_w_type', - isa => 'Int', + isa => 'Int', builder => 'get_foo_builder_w_type', initializer => sub { my ($self, $value, $callback, $attr) = @_; - + ::isa_ok($attr, 'Moose::Meta::Attribute'); - ::is($attr->name, 'lazy_foo_builder_w_type', '... got the right name'); - + ::is($attr->name, 'lazy_foo_builder_w_type', '... got the right name'); + $callback->($value * 2); }, ); - - sub get_foo_builder { 100 } - sub get_foo_builder_w_type { 1000 } + + sub get_foo_builder { 100 } + sub get_foo_builder_w_type { 1000 } } { @@ -93,26 +93,26 @@ use Test::Exception; is($foo->get_lazy_foo, 20, 'initial lazy value set to 2x given value'); is($foo->get_lazy_foo_w_type, 40, 'initial lazy value with type set to 2x given value'); is($foo->get_lazy_foo_builder, 200, 'initial lazy value with builder set to 2x given value'); - is($foo->get_lazy_foo_builder_w_type, 2000, 'initial lazy value with builder and type set to 2x given value'); + is($foo->get_lazy_foo_builder_w_type, 2000, 'initial lazy value with builder and type set to 2x given value'); } { package Bar; use Moose; - + has 'foo' => ( reader => 'get_foo', writer => 'set_foo', initializer => sub { my ($self, $value, $callback, $attr) = @_; - + ::isa_ok($attr, 'Moose::Meta::Attribute'); ::is($attr->name, 'foo', '... got the right name'); - + $callback->($value * 2); }, - ); - + ); + __PACKAGE__->meta->make_immutable; } @@ -120,27 +120,27 @@ use Test::Exception; my $bar = Bar->new(foo => 10); isa_ok($bar, 'Bar'); - is($bar->get_foo, 20, 'initial value set to 2x given value'); + is($bar->get_foo, 20, 'initial value set to 2x given value'); } { package Fail::Bar; use Moose; - + has 'foo' => ( reader => 'get_foo', writer => 'set_foo', isa => 'Int', initializer => sub { my ($self, $value, $callback, $attr) = @_; - + ::isa_ok($attr, 'Moose::Meta::Attribute'); ::is($attr->name, 'foo', '... got the right name'); - + $callback->("Hello $value World"); }, - ); - + ); + __PACKAGE__->meta->make_immutable; }