1#!perl -T
2
3use Class::Unload;
4use lib 't/lib';
5
6use Test::More tests => 6; 
7
8require MyClass::Child;
9
10can_ok( 'MyClass::Child', 'parent_method' );
11can_ok( 'MyClass::Child', 'child_method' );
12
13Class::Unload->unload('MyClass::Child');
14
15for my $method ( qw/ parent_method child_method/ ) {
16    eval { MyClass::Child->$method };
17    like( $@, qr/Can't locate object method "$method" via package "MyClass::Child"/,
18          "$method on unloaded class fails");
19}
20
21require MyClass::Child;
22
23Class::Unload->unload('MyClass::Parent');
24
25can_ok( 'MyClass::Child', 'child_method' );
26eval { MyClass::Child->parent_method };
27like( $@, qr/Can't locate object method "parent_method" via package "MyClass::Child"/,
28      "method on unloaded parent class fails");
29
30