diff options
author | Nicholas Clark <nick@ccl4.org> | 2006-02-22 16:50:25 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2006-02-22 16:50:25 +0000 |
commit | e36cc0fbcf17e559bf3f189f3b67eca0ac6dc543 (patch) | |
tree | f14ca03fe1ff18577b3bc4fd5b1665e35adc1643 | |
parent | cfae286ee950aa5c0910601410971733f656001f (diff) | |
download | perl-e36cc0fbcf17e559bf3f189f3b67eca0ac6dc543.tar.gz |
Test warnings for converting globs to other forms.
p4raw-id: //depot/perl@27268
-rwxr-xr-x | t/op/gv.t | 30 |
1 files changed, 29 insertions, 1 deletions
@@ -12,7 +12,7 @@ BEGIN { use warnings; require './test.pl'; -plan( tests => 138 ); +plan( tests => 154 ); # type coersion on assignment $foo = 'foo'; @@ -89,6 +89,34 @@ is (scalar %foo, 0); is($msg, ''); *foo = undef; like($msg, qr/Undefined value assigned to typeglob/); + + no warnings 'once'; + # test warnings for converting globs to other forms + my $copy = *PWOMPF; + foreach ($copy, *SKREEE) { + $msg = ''; + my $victim = sprintf "%d", $_; + like($msg, qr/Argument "\*main::[A-Z]{6}" isn't numeric in sprintf/, + "Warning on conversion to IV"); + is($victim, 0); + + $msg = ''; + $victim = sprintf "%u", $_; + like($msg, qr/Argument "\*main::[A-Z]{6}" isn't numeric in sprintf/, + "Warning on conversion to UV"); + is($victim, 0); + + $msg = ''; + $victim = sprintf "%e", $_; + like($msg, qr/Argument "\*main::[A-Z]{6}" isn't numeric in sprintf/, + "Warning on conversion to NV"); + like($victim, qr/^0\.0+E\+?00/i, "Expect floating point zero"); + + $msg = ''; + $victim = sprintf "%s", $_; + is($msg, '', "No warning on stringification"); + is($victim, '' . $_); + } } my $test = curr_test(); |