X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=t%2Fop%2Fgv.t;h=d736138b62fba6116457b35649094effe6f395c0;hb=9e0d86f862e086b0fde6b64ca39c85508bf50910;hp=4475912f530bfcaa0201a6ba337f6427ec7bb7b8;hpb=06be3b4087230d77129ccda5ba56e0397c241c48;p=p5sagit%2Fp5-mst-13.2.git diff --git a/t/op/gv.t b/t/op/gv.t index 4475912..d736138 100755 --- a/t/op/gv.t +++ b/t/op/gv.t @@ -12,7 +12,7 @@ BEGIN { use warnings; require './test.pl'; -plan( tests => 155 ); +plan( tests => 159 ); # type coersion on assignment $foo = 'foo'; @@ -458,6 +458,28 @@ foreach my $value ([1,2,3], {1=>2}, *STDOUT{IO}, \&ok, *STDOUT{FORMAT}) { *slosh::{HASH}->{ISA}=[]; slosh->import; pass("gv_fetchmeth coped with the unexpected"); + + # An audit found these: + { + package slosh; + sub rip { + my $s = shift; + $s->SUPER::rip; + } + } + eval {slosh->rip;}; + like ($@, qr/^Can't locate object method "rip"/, "Even with SUPER"); + + is(slosh->isa('swoosh'), ''); + + $CORE::GLOBAL::{"lock"}=[]; + eval "no warnings; lock"; + like($@, qr/^Not enough arguments for lock/, + "Can't trip up general keyword overloading"); + + $CORE::GLOBAL::{"readline"}=[]; + eval "no warnings; "; + is($@, '', "Can't trip up readline overloading"); } __END__ Perl