Check body, because original_package_name may be a different role
[gitmo/Perl-Critic-Dynamic-Moose.git] / lib / Perl / Critic / Policy / DynamicMoose / ClassOverridesRole.pm
index f7350fb..3b5d040 100644 (file)
@@ -25,10 +25,8 @@ sub violates_metaclass {
             my $method_object = $class->get_method($method)
                 or next;
 
-            # no metadata, should check source role to make sure it's the
-            # same as $role
             if ($method_object->isa('Moose::Meta::Role::Method')) {
-                next if $method_object->original_package_name eq $role->name;
+                next if $method_object->body == $role->get_method($method)->body;
             }
 
             my $class_name = $class->name;