This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Re: updated patch on the sysread, syswrite for VMS
[perl5.git] / t / op / undef.t
1 #!./perl
2
3 # $RCSfile: undef.t,v $$Revision: 4.1 $$Date: 92/08/07 18:28:34 $
4
5 print "1..21\n";
6
7 print defined($a) ? "not ok 1\n" : "ok 1\n";
8
9 $a = 1+1;
10 print defined($a) ? "ok 2\n" : "not ok 2\n";
11
12 undef $a;
13 print defined($a) ? "not ok 3\n" : "ok 3\n";
14
15 $a = "hi";
16 print defined($a) ? "ok 4\n" : "not ok 4\n";
17
18 $a = $b;
19 print defined($a) ? "not ok 5\n" : "ok 5\n";
20
21 @ary = ("1arg");
22 $a = pop(@ary);
23 print defined($a) ? "ok 6\n" : "not ok 6\n";
24 $a = pop(@ary);
25 print defined($a) ? "not ok 7\n" : "ok 7\n";
26
27 @ary = ("1arg");
28 $a = shift(@ary);
29 print defined($a) ? "ok 8\n" : "not ok 8\n";
30 $a = shift(@ary);
31 print defined($a) ? "not ok 9\n" : "ok 9\n";
32
33 $ary{'foo'} = 'hi';
34 print defined($ary{'foo'}) ? "ok 10\n" : "not ok 10\n";
35 print defined($ary{'bar'}) ? "not ok 11\n" : "ok 11\n";
36 undef $ary{'foo'};
37 print defined($ary{'foo'}) ? "not ok 12\n" : "ok 12\n";
38
39 print defined(@ary) ? "ok 13\n" : "not ok 13\n";
40 print defined(%ary) ? "ok 14\n" : "not ok 14\n";
41 undef @ary;
42 print defined(@ary) ? "not ok 15\n" : "ok 15\n";
43 undef %ary;
44 print defined(%ary) ? "not ok 16\n" : "ok 16\n";
45 @ary = (1);
46 print defined @ary ? "ok 17\n" : "not ok 17\n";
47 %ary = (1,1);
48 print defined %ary ? "ok 18\n" : "not ok 18\n";
49
50 sub foo { print "ok 19\n"; }
51
52 &foo || print "not ok 19\n";
53
54 print defined &foo ? "ok 20\n" : "not ok 20\n";
55 undef &foo;
56 print defined(&foo) ? "not ok 21\n" : "ok 21\n";