Resolve a todo (method confliction)
[gitmo/Mouse.git] / t / 202-squirrel-role.t
index 618b950..22eb9bf 100644 (file)
@@ -6,6 +6,10 @@ use warnings;
 use Test::More;
 use Scalar::Util 'blessed';
 
+BEGIN {
+    $SIG{__WARN__} = sub { warn $_[0] if $_[0] !~ /Squirrel is deprecated/ };
+}
+
 do {
     package Foo::Role;
     use Squirrel::Role;
@@ -22,8 +26,8 @@ do {
 # affecting its definition
 
 BEGIN {
-    plan skip_all => "Moose required for this test" unless eval { require Moose };
-    plan tests => 12;
+    plan skip_all => "Moose 0.68 required for this test" unless eval { require Moose::Role && Moose::Role->VERSION('0.68') };
+    plan tests => 6;
 }
 
 do {
@@ -39,7 +43,10 @@ do {
 };
 
 ok(!Foo::Role->can('has'), "Mouse::Role::has was unimported");
-ok(!Bar::Role->can('has'), "Moose::Role::has was unimported");
+SKIP: {
+    skip "ancient moose", 1 if $Moose::VERSION <= 0.50;
+    ok(!Bar::Role->can('has'), "Moose::Role::has was unimported");
+}
 
 eval "
     package Foo::Role;
@@ -53,9 +60,9 @@ eval "
     has bar => (is => 'rw');
 ";
 
-isa_ok(blessed(Foo::Role->meta), 'Mouse::Meta::Role');
-isa_ok(blessed(Foo::Role->meta), 'Mouse::Meta::Role', 'Squirrel::Role is consistent if Moose was loaded between imports');
+isa_ok(Foo::Role->meta, 'Mouse::Meta::Role');
+isa_ok(Foo::Role->meta, 'Mouse::Meta::Role');
 
-isa_ok(blessed(Bar::Role->meta), 'Moose::Meta::Role');
-isa_ok(blessed(Bar::Role->meta), 'Moose::Meta::Role');
+isa_ok(Bar::Role->meta, 'Moose::Meta::Role');
+isa_ok(Bar::Role->meta, 'Moose::Meta::Role');