fix field names with a single quote in them (patch from Jason Plum)
[p5sagit/Class-Accessor-Grouped.git] / t / component.t
1 use Test::More tests => 8;
2 use strict;
3 use warnings;
4 use lib 't/lib';
5 use Class::Inspector;
6 use AccessorGroups;
7
8 is(AccessorGroups->result_class, undef);
9
10 ## croak on set where class can't be loaded and it's a physical class
11 my $dying = AccessorGroups->new;
12 eval {
13     $dying->result_class('NotReallyAClass');
14 };
15 ok($@ =~ /Could not load result_class 'NotReallyAClass'/);
16 is($dying->result_class, undef);
17
18
19 ## don't croak when the class isn't available but not loaded for people
20 ## who create class/packages on the fly
21 $dying->result_class('JunkiesNeverInstalled');
22 is($dying->result_class, 'JunkiesNeverInstalled');
23
24 ok(!Class::Inspector->loaded('BaseInheritedGroups'));
25 AccessorGroups->result_class('BaseInheritedGroups');
26 ok(Class::Inspector->loaded('BaseInheritedGroups'));
27 is(AccessorGroups->result_class, 'BaseInheritedGroups');
28
29 ## unset it
30 AccessorGroups->result_class(undef);
31 is(AccessorGroups->result_class, undef);