1#!./perl 2 3BEGIN { 4 unless (-d 'blib') { 5 chdir 't' if -d 't'; 6 @INC = '../lib'; 7 require Config; import Config; 8 keys %Config; # Silence warning 9 if ($Config{extensions} !~ /\bList\/Util\b/) { 10 print "1..0 # Skip: List::Util was not built\n"; 11 exit 0; 12 } 13 } 14} 15 16use Scalar::Util qw(readonly); 17use Test::More tests => 9; 18 19ok( readonly(1), 'number constant'); 20 21my $var = 2; 22 23ok( !readonly($var), 'number variable'); 24is( $var, 2, 'no change to number variable'); 25 26ok( readonly("fred"), 'string constant'); 27 28$var = "fred"; 29 30ok( !readonly($var), 'string variable'); 31is( $var, 'fred', 'no change to string variable'); 32 33$var = \2; 34 35ok( !readonly($var), 'reference to constant'); 36ok( readonly($$var), 'de-reference to constant'); 37 38ok( !readonly(*STDOUT), 'glob'); 39