6 use Test::More 'no_plan';
10 use_ok('MooseX::MetaDescription');
15 use metaclass 'MooseX::MetaDescription::Meta::Class' => (
23 metaclass => 'MooseX::MetaDescription::Meta::Attribute',
26 default => sub { 'Foo::bar' },
28 baz => 'Foo::bar::baz',
29 gorch => 'Foo::bar::gorch',
34 traits => [ 'MooseX::MetaDescription::Meta::Trait' ],
37 default => sub { 'Foo::baz' },
39 bar => 'Foo::baz::bar',
40 gorch => 'Foo::baz::gorch',
47 my $foo_class = Foo->meta;
48 isa_ok($foo_class, 'MooseX::MetaDescription::Meta::Class');
49 isa_ok($foo_class->metadescription, 'MooseX::MetaDescription::Description');
50 is($foo_class->metadescription->descriptor, $foo_class, '... got the circular ref');
52 my $bar_attr = Foo->meta->get_attribute('bar');
53 isa_ok($bar_attr->metadescription, 'MooseX::MetaDescription::Description');
54 is($bar_attr->metadescription->descriptor, $bar_attr, '... got the circular ref');
56 my $baz_attr = Foo->meta->get_attribute('baz');
57 isa_ok($baz_attr->metadescription, 'MooseX::MetaDescription::Description');
58 is($baz_attr->metadescription->descriptor, $baz_attr, '... got the circular ref');
60 # check the actual descs
62 foreach my $foo ('Foo', Foo->new) {
64 $foo->meta->description,
65 { 'Hello' => 'World' },
66 '... got the right class description'
70 $foo->meta->get_attribute('bar')->description,
72 baz => 'Foo::bar::baz',
73 gorch => 'Foo::bar::gorch',
75 '... got the right class description'
79 $foo->meta->get_attribute('baz')->description,
81 bar => 'Foo::baz::bar',
82 gorch => 'Foo::baz::gorch',
84 '... got the right class description'