X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2F400-define-role.t;h=7067651853bbb9e90c6bef3981da7d672de46d79;hb=92583b3320b6ed8b4673fc94e68af64b3cf106e3;hp=4b27be5cd96ae1339900ae3b6d0d6193e34ade1e;hpb=7840048031b19bd4af654285aa855826be6fa544;p=gitmo%2FMouse.git diff --git a/t/400-define-role.t b/t/400-define-role.t index 4b27be5..7067651 100644 --- a/t/400-define-role.t +++ b/t/400-define-role.t @@ -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; }; @@ -55,21 +55,25 @@ do { no Mouse::Role; }; -throws_ok { +lives_ok { package Role; use Mouse::Role; with 'Other::Role'; no Mouse::Role; -} qr/Role does not currently support 'with'/; +}; -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'; +}; +