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";
16 use Test::More tests => 11;
17 use Scalar::Util qw(blessed);
20 ok(!defined blessed(undef), 'undef is not blessed');
21 ok(!defined blessed(1), 'Numbers are not blessed');
22 ok(!defined blessed('A'), 'Strings are not blessed');
23 ok(!defined blessed({}), 'Unblessed HASH-ref');
24 ok(!defined blessed([]), 'Unblessed ARRAY-ref');
25 ok(!defined blessed(\$t), 'Unblessed SCALAR-ref');
28 is(blessed($x), "ABC", 'blessed ARRAY-ref');
31 is(blessed($x), "DEF", 'blessed HASH-ref');
34 cmp_ok(blessed($x), "eq", "0", 'blessed HASH-ref');
39 no warnings 'redefine';
40 local *UNIVERSAL::can = sub { die "Burp!" if ++$depth > 2; blessed(shift) };
44 is($blessed, "DEF", 'recursion of UNIVERSAL::can');
52 my $obj = bless [], __PACKAGE__;
53 ::is( ::blessed($obj), __PACKAGE__, "blessed on broken isa() and can()" );