Make it so Mouse doesn't overwrite attributes
Shawn M Moore [Thu, 19 Jun 2008 00:12:15 +0000 (00:12 +0000)]
lib/Mouse/Meta/Role.pm
t/402-basic-role-application.t

index 870b69d..9b4aec5 100644 (file)
@@ -51,6 +51,7 @@ sub apply {
     my $pkg   = $class->name;
 
     for my $name ($self->get_attribute_list) {
+        next if $class->has_attribute($name);
         my $spec = $self->get_attribute($name);
         Mouse::Meta::Attribute->create($pkg, $name, %$spec);
     }
index 1191d03..d05f818 100644 (file)
@@ -46,8 +46,5 @@ lives_ok {
     with 'Role2';
 };
 
-TODO: {
-    local $TODO = "Moose prefers first definition, Mouse the last";
-    is(Class2->meta->get_attribute('attr')->default, 'Role');
-};
+is(Class2->meta->get_attribute('attr')->default, 'Role');