Add test for adding accessors more than once.
[gitmo/MooseX-Emulate-Class-Accessor-Fast.git] / t / double_apply.t
1 #!perl
2 use strict;
3 use warnings;
4 use Test::More tests => 5;
5 use Test::Exception;
6
7 # 1
8 use_ok('MooseX::Adopt::Class::Accessor::Fast');
9 {
10   package My::Package;
11   use base qw/Class::Accessor::Fast/;
12   for (0..1) {
13     __PACKAGE__->mk_accessors(qw( foo ));
14     __PACKAGE__->mk_ro_accessors(qw( bar ));
15     __PACKAGE__->mk_wo_accessors(qw( baz ));
16   }
17 }
18
19 my $i = bless { bar => 'bar' }, 'My::Package';
20
21 # 2
22 lives_ok {
23   $i->foo('foo');
24   $i->baz('baz');
25
26   # 3-5
27   is($i->foo, 'foo');
28   is($i->bar, 'bar');
29   is($i->{baz}, 'baz');
30 } 'No exception';
31