From: Shawn M Moore Date: Sun, 14 Dec 2008 21:30:38 +0000 (+0000) Subject: More tests for parameterized attr traits X-Git-Tag: 0.64~17 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=147c48448ee8d24aabbf3244e52c6f93bf5caa47;p=gitmo%2FMoose.git More tests for parameterized attr traits --- diff --git a/t/020_attributes/024_attribute_traits_parameterized.t b/t/020_attributes/024_attribute_traits_parameterized.t index 4f9578e..eec271a 100644 --- a/t/020_attributes/024_attribute_traits_parameterized.t +++ b/t/020_attributes/024_attribute_traits_parameterized.t @@ -1,7 +1,7 @@ #!/usr/bin/env perl use strict; use warnings; -use Test::More tests => 2; +use Test::More tests => 6; { package My::Attribute::Trait; @@ -26,10 +26,30 @@ use Test::More tests => 2; }, ], ); +} + +{ + package My::Other::Class; + use Moose; + has foo => ( + traits => [ + 'My::Attribute::Trait' => { + alias => { + reversed_name => 'reversed', + }, + }, + ], + ); } my $attr = My::Class->meta->get_attribute('foo'); is($attr->eman, 'oof', 'the aliased method is in the attribute'); ok(!$attr->can('reversed_name'), 'the method was not installed under its original name'); +ok(!$attr->can('reversed'), "the method was not installed under the other class' alias"); + +my $other_attr = My::Other::Class->meta->get_attribute('foo'); +is($other_attr->reversed, 'oof', 'the aliased method is in the attribute'); +ok(!$other_attr->can('reversed_name'), 'the method was not installed under its original name'); +ok(!$other_attr->can('enam'), "the method was not installed under the other class' alias");