AHHHHHHHHHHHH
[gitmo/Moose.git] / t / 042_apply_role.t
index e9f819b..fae8593 100644 (file)
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 36;
+use Test::More tests => 39;
 use Test::Exception;
 
 BEGIN {  
@@ -12,8 +12,6 @@ BEGIN {
 
 {
     package FooRole;
-    use strict;
-    use warnings;
     use Moose::Role;
     
     has 'bar' => (is => 'rw', isa => 'FooClass');
@@ -30,16 +28,12 @@ BEGIN {
     }; 
 
     package BarClass;
-    use strict;
-    use warnings;
     use Moose;
     
     sub boo { 'BarClass::boo' }
     sub foo { 'BarClass::foo' }  # << the role overrides this ...  
     
     package FooClass;
-    use strict;
-    use warnings;
     use Moose;
     
     extends 'BarClass';
@@ -53,6 +47,18 @@ BEGIN {
 my $foo_class_meta = FooClass->meta;
 isa_ok($foo_class_meta, 'Moose::Meta::Class');
 
+dies_ok {
+    $foo_class_meta->does_role()
+} '... does_role requires a role name';
+
+dies_ok {
+    $foo_class_meta->apply_role()
+} '... apply_role requires a role';
+
+dies_ok {
+    $foo_class_meta->apply_role(bless({} => 'Fail'))
+} '... apply_role requires a role';
+
 ok($foo_class_meta->does_role('FooRole'), '... the FooClass->meta does_role FooRole');
 ok(!$foo_class_meta->does_role('OtherRole'), '... the FooClass->meta !does_role OtherRole');