From: Karen Etheridge Date: Mon, 7 Mar 2011 17:27:30 +0000 (-0800) Subject: fixed tests to "pass" under latest MXRP (0.25); however todo tests still remain X-Git-Tag: 0.13~4 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=f2dec73df5a5b1eafeb7d39cbf5d775b29795cfb;p=gitmo%2FMooseX-AlwaysCoerce.git fixed tests to "pass" under latest MXRP (0.25); however todo tests still remain --- diff --git a/Changes b/Changes index f71d56f..50f1df1 100644 --- a/Changes +++ b/Changes @@ -1,5 +1,9 @@ Revision history for MooseX-AlwaysCoerce +{{NEXT} + - fixed class attribute and parameterized role TODO tests to work again + with the latest MooseX::Role::Parameterized (Karen Etheridge) + 0.12 2010-10-08 12:14:54 PDT - ...and again. diff --git a/t/04-parameterized-roles.t b/t/04-parameterized-roles.t index cf50dfa..b7b6182 100644 --- a/t/04-parameterized-roles.t +++ b/t/04-parameterized-roles.t @@ -12,45 +12,40 @@ use Test::Requires { eval <<'EOF'; package Role; use MooseX::Role::Parameterized; + use MooseX::ClassAttribute; use MooseX::AlwaysCoerce; use Moose::Util::TypeConstraints; - # I do nothing! - role {}; + role { + subtype 'MyType', as 'Int'; + coerce 'MyType', from 'Str', via { length $_ }; - subtype 'MyType', as 'Int'; - coerce 'MyType', from 'Str', via { length $_ }; + subtype 'Uncoerced', as 'Int'; - subtype 'Uncoerced', as 'Int'; + has foo => (is => 'rw', isa => 'MyType'); - has foo => (is => 'rw', isa => 'MyType'); + class_has bar => (is => 'rw', isa => 'MyType'); - class_has bar => (is => 'rw', isa => 'MyType'); + class_has baz => (is => 'rw', isa => 'MyType', coerce => 0); - class_has baz => (is => 'rw', isa => 'MyType', coerce => 0); + has quux => (is => 'rw', isa => 'MyType', coerce => 0); - has quux => (is => 'rw', isa => 'MyType', coerce => 0); + has uncoerced_attr => (is => 'rw', isa => 'Uncoerced'); - has uncoerced_attr => (is => 'rw', isa => 'Uncoerced'); + class_has uncoerced_class_attr => (is => 'rw', isa => 'Uncoerced'); - class_has uncoerced_class_attr => (is => 'rw', isa => 'Uncoerced'); + has untyped_attr => (is => 'rw'); - has untyped_attr => (is => 'rw'); + class_has untyped_class_attr => (is => 'rw'); + }; - class_has untyped_class_attr => (is => 'rw'); - - package Foo; + package MyClass; use Moose; with 'Role'; EOF -if ($@) { - plan skip_all => -'MooseX::ClassAttribute is currently incompatible with MooseX::Role::Parameterized'; -} plan tests => 10; - eval 'use Test::NoWarnings'; ok( (my $instance = MyClass->new), 'instance' ); @@ -62,35 +57,35 @@ ok( (my $instance = MyClass->new), 'instance' ); $instance->foo('bar'); is $instance->foo, 3; } 'attribute coercion ran'; -} -lives_and { - $instance->bar('baz'); - is $instance->bar, 3; -} 'class attribute coercion ran'; + lives_and { + $instance->bar('baz'); + is $instance->bar, 3; + } 'class attribute coercion ran'; -dies_ok { $instance->baz('quux') } - 'class attribute coercion did not run with coerce => 0'; + dies_ok { $instance->baz('quux') } + 'class attribute coercion did not run with coerce => 0'; -dies_ok { $instance->quux('mtfnpy') } - 'attribute coercion did not run with coerce => 0'; + dies_ok { $instance->quux('mtfnpy') } + 'attribute coercion did not run with coerce => 0'; -lives_and { - $instance->uncoerced_attr(10); - is $instance->uncoerced_attr(10), 10; -} 'set attribute having type with no coercion and no coerce=0'; + lives_and { + $instance->uncoerced_attr(10); + is $instance->uncoerced_attr(10), 10; + } 'set attribute having type with no coercion and no coerce=0'; -lives_and { - $instance->uncoerced_class_attr(10); - is $instance->uncoerced_class_attr(10), 10; -} 'set class attribute having type with no coercion and no coerce=0'; + lives_and { + $instance->uncoerced_class_attr(10); + is $instance->uncoerced_class_attr(10), 10; + } 'set class attribute having type with no coercion and no coerce=0'; -lives_and { - $instance->untyped_attr(10); - is $instance->untyped_attr, 10; -} 'set untyped attribute'; + lives_and { + $instance->untyped_attr(10); + is $instance->untyped_attr, 10; + } 'set untyped attribute'; -lives_and { - $instance->untyped_class_attr(10); - is $instance->untyped_class_attr, 10; -} 'set untyped class attribute'; + lives_and { + $instance->untyped_class_attr(10); + is $instance->untyped_class_attr, 10; + } 'set untyped class attribute'; +}