Failing test for role metaobjects knowing their parameters
[gitmo/MooseX-Role-Parameterized.git] / t / 002-role-block.t
index e417880..fab2425 100644 (file)
@@ -1,7 +1,7 @@
 #!/usr/bin/env perl
 use strict;
 use warnings;
-use Test::More tests => 5;
+use Test::More tests => 8;
 use Test::Exception;
 
 my ($parameters, %args);
@@ -23,6 +23,11 @@ do {
             is      => 'ro',
             default => $parameters->default_age,
         );
+
+        method birthday => sub {
+            my $self = shift;
+            return 2000 - $self->age;
+        };
     };
 };
 
@@ -34,9 +39,14 @@ my $role = MyPerson->meta->generate_role(
 
 isa_ok($role, 'Moose::Meta::Role', 'generate_role created a role');
 
+is($role->parameters, $parameters, 'the generated role knows its parameters');
+
 is($parameters->default_age, 7);
 is($args{operating_on}, $role, "we pass in the role metaclass that we're operating on");
 
 my $age_attr = $role->get_attribute('age');
 is($age_attr->{default}, 7, "role's age attribute has the right default");
 
+my $birthday_method = $role->get_method('birthday');
+is($birthday_method->name, 'birthday', "method name");
+is($birthday_method->package_name, $role->name, "package name");