Tweaks and documenting Mouse::Exporter
[gitmo/Mouse.git] / t / 400-define-role.t
index 53c77cf..7067651 100644 (file)
@@ -1,7 +1,7 @@
 #!/usr/bin/env perl
 use strict;
 use warnings;
-use Test::More tests => 10;
+use Test::More tests => 11;
 use Test::Exception;
 
 lives_ok {
@@ -18,7 +18,7 @@ throws_ok {
     extends 'Role::Parent';
 
     no Mouse::Role;
-} qr/Role does not currently support 'extends'/;
+} qr/Roles do not support 'extends'/;
 
 lives_ok {
     package Role;
@@ -44,7 +44,7 @@ lives_ok {
     package Role;
     use Mouse::Role;
 
-    has 'foo';
+    has 'foo' => (is => 'bare');
 
     no Mouse::Role;
 };
@@ -64,12 +64,16 @@ lives_ok {
     no Mouse::Role;
 };
 
-lives_ok {
+TODO: {
     package Role;
     use Mouse::Role;
 
-    requires 'required';
-    excludes 'excluded';
+    eval {
+        excludes 'excluded';
+    };
+    our $TODO;
+    local $TODO = "Mouse::Role does not currently support 'excludes'";
+    ::ok(!$@, "excludes");
 
     no Mouse::Role;
 };
@@ -90,3 +94,10 @@ lives_ok {
     ::is(blessed($obj), "Impromptu::Class");
 };
 
+lives_ok{
+    package Class;
+    use Mouse;
+
+    with 'Role', 'Other::Role';
+};
+