03f0fbdd9da85bdce25375e039f502402fe86a67
[p5sagit/p5-mst-13.2.git] / t / op / universal.t
1 #!./perl
2 #
3 # check UNIVERSAL
4 #
5
6 print "1..11\n";
7
8 $a = {};
9 bless $a, "Bob";
10 print "not " unless $a->isa("Bob");
11 print "ok 1\n";
12
13 package Human;
14 sub eat {}
15
16 package Female;
17 @ISA=qw(Human);
18
19 package Alice;
20 @ISA=qw(Bob Female);
21 sub drink {}
22 sub new { bless {} }
23
24 package main;
25 $a = new Alice;
26
27 print "not " unless $a->isa("Alice");
28 print "ok 2\n";
29
30 print "not " unless $a->isa("Bob");
31 print "ok 3\n";
32
33 print "not " unless $a->isa("Female");
34 print "ok 4\n";
35
36 print "not " unless $a->isa("Human");
37 print "ok 5\n";
38
39 print "not " if $a->isa("Male");
40 print "ok 6\n";
41
42 print "not " unless $a->can("drink");
43 print "ok 7\n";
44
45 print "not " unless $a->can("eat");
46 print "ok 8\n";
47
48 print "not " if $a->can("sleep");
49 print "ok 9\n";
50
51 print "not " unless UNIVERSAL::isa([], "ARRAY");
52 print "ok 10\n";
53
54 print "not " unless UNIVERSAL::isa({}, "HASH");
55 print "ok 11\n";