fix occasional op/time.t failure
[p5sagit/p5-mst-13.2.git] / t / op / universal.t
index e37bfc7..5e7fb1e 100755 (executable)
@@ -10,7 +10,7 @@ BEGIN {
     require "./test.pl";
 }
 
-plan tests => 109;
+plan tests => 110;
 
 $a = {};
 bless $a, "Bob";
@@ -123,9 +123,9 @@ my $subs = join ' ', sort grep { defined &{"UNIVERSAL::$_"} } keys %UNIVERSAL::;
 ## The test for import here is *not* because we want to ensure that UNIVERSAL
 ## can always import; it is an historical accident that UNIVERSAL can import.
 if ('a' lt 'A') {
-    is $subs, "can does import isa VERSION";
+    is $subs, "can import isa DOES VERSION";
 } else {
-    is $subs, "VERSION can does import isa";
+    is $subs, "DOES VERSION can import isa";
 }
 
 ok $a->isa("UNIVERSAL");
@@ -146,9 +146,9 @@ ok $a->isa("UNIVERSAL");
 my $sub2 = join ' ', sort grep { defined &{"UNIVERSAL::$_"} } keys %UNIVERSAL::;
 # XXX import being here is really a bug
 if ('a' lt 'A') {
-    is $sub2, "can does import isa VERSION";
+    is $sub2, "can import isa DOES VERSION";
 } else {
-    is $sub2, "VERSION can does import isa";
+    is $sub2, "DOES VERSION can import isa";
 }
 
 eval 'sub UNIVERSAL::sleep {}';
@@ -202,7 +202,7 @@ fresh_perl_is('package Foo; Foo->VERSION;  print "ok"', 'ok');
 
 package Foo;
 
-sub does { 1 }
+sub DOES { 1 }
 
 package Bar;
 
@@ -211,8 +211,15 @@ package Bar;
 package Baz;
 
 package main;
-ok( Foo->does( 'bar' ), 'does() should call does() on class' );
-ok( Bar->does( 'Bar' ), '... and should fall back to isa()' );
-ok( Bar->does( 'Foo' ), '... even when inherited' );
-ok( Baz->does( 'Baz' ), '... even without inheriting any other does()' );
-ok( ! Baz->does( 'Foo' ), '... returning true or false appropriately' );
+ok( Foo->DOES( 'bar' ), 'DOES() should call DOES() on class' );
+ok( Bar->DOES( 'Bar' ), '... and should fall back to isa()' );
+ok( Bar->DOES( 'Foo' ), '... even when inherited' );
+ok( Baz->DOES( 'Baz' ), '... even without inheriting any other DOES()' );
+ok( ! Baz->DOES( 'Foo' ), '... returning true or false appropriately' );
+
+package Pig;
+package Bodine;
+Bodine->isa('Pig');
+*isa = \&UNIVERSAL::isa;
+eval { isa({}, 'HASH') };
+::is($@, '', "*isa correctly found")