Update to Scalar-List-Utils-1.15
[p5sagit/p5-mst-13.2.git] / ext / List / Util / t / readonly.t
1 #!./perl
2
3 BEGIN {
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
16 use Scalar::Util qw(readonly);
17 use Test::More tests => 9;
18
19 ok( readonly(1),        'number constant');
20
21 my $var = 2;
22
23 ok( !readonly($var),    'number variable');
24 is( $var,       2,      'no change to number variable');
25
26 ok( readonly("fred"),   'string constant');
27
28 $var = "fred";
29
30 ok( !readonly($var),    'string variable');
31 is( $var,       'fred', 'no change to string variable');
32
33 $var = \2;
34
35 ok( !readonly($var),    'reference to constant');
36 ok( readonly($$var),    'de-reference to constant');
37
38 ok( !readonly(*STDOUT), 'glob');