Commit | Line | Data |
c47cf415 |
1 | #!/usr/bin/perl |
2 | # This is automatically generated by author/import-moose-test.pl. |
3 | # DO NOT EDIT THIS FILE. ANY CHANGES WILL BE LOST!!! |
4 | use t::lib::MooseCompat; |
5 | |
6 | use strict; |
7 | use warnings; |
8 | |
9 | use Test::More; |
10 | $TODO = q{Mouse is not yet completed}; |
11 | use Test::Mouse qw(does_ok); |
12 | |
13 | BEGIN { |
14 | package Foo::Meta::Role; |
15 | use Mouse::Role; |
16 | Mouse::Util::meta_class_alias |
17 | FooRole => 'Foo::Meta::Role'; |
18 | |
19 | package Foo::Meta::Class; |
20 | use Mouse; |
21 | extends 'Mouse::Meta::Class'; |
22 | with 'Foo::Meta::Role'; |
23 | Mouse::Util::meta_class_alias |
24 | FooClass => 'Foo::Meta::Class'; |
25 | |
26 | package Foo::Meta::Role::Attribute; |
27 | use Mouse::Role; |
28 | Mouse::Util::meta_attribute_alias |
29 | FooAttrRole => 'Foo::Meta::Role::Attribute'; |
30 | |
31 | package Foo::Meta::Attribute; |
32 | use Mouse; |
33 | extends 'Mouse::Meta::Attribute'; |
34 | with 'Foo::Meta::Role::Attribute'; |
35 | Mouse::Util::meta_attribute_alias |
36 | FooAttrClass => 'Foo::Meta::Attribute'; |
37 | |
38 | package Bar::Meta::Role; |
39 | use Mouse::Role; |
40 | Mouse::Util::meta_class_alias 'BarRole'; |
41 | |
42 | package Bar::Meta::Class; |
43 | use Mouse; |
44 | extends 'Mouse::Meta::Class'; |
45 | with 'Bar::Meta::Role'; |
46 | Mouse::Util::meta_class_alias 'BarClass'; |
47 | |
48 | package Bar::Meta::Role::Attribute; |
49 | use Mouse::Role; |
50 | Mouse::Util::meta_attribute_alias 'BarAttrRole'; |
51 | |
52 | package Bar::Meta::Attribute; |
53 | use Mouse; |
54 | extends 'Mouse::Meta::Attribute'; |
55 | with 'Bar::Meta::Role::Attribute'; |
56 | Mouse::Util::meta_attribute_alias 'BarAttrClass'; |
57 | } |
58 | |
59 | package FooWithMetaClass; |
60 | use Mouse -metaclass => 'FooClass'; |
61 | |
62 | has bar => ( |
63 | metaclass => 'FooAttrClass', |
64 | is => 'ro', |
65 | ); |
66 | |
67 | |
68 | package FooWithMetaTrait; |
69 | use Mouse -traits => 'FooRole'; |
70 | |
71 | has bar => ( |
72 | traits => [qw(FooAttrRole)], |
73 | is => 'ro', |
74 | ); |
75 | |
76 | package BarWithMetaClass; |
77 | use Mouse -metaclass => 'BarClass'; |
78 | |
79 | has bar => ( |
80 | metaclass => 'BarAttrClass', |
81 | is => 'ro', |
82 | ); |
83 | |
84 | |
85 | package BarWithMetaTrait; |
86 | use Mouse -traits => 'BarRole'; |
87 | |
88 | has bar => ( |
89 | traits => [qw(BarAttrRole)], |
90 | is => 'ro', |
91 | ); |
92 | |
93 | package main; |
94 | my $fwmc_meta = FooWithMetaClass->meta; |
95 | my $fwmt_meta = FooWithMetaTrait->meta; |
96 | isa_ok($fwmc_meta, 'Foo::Meta::Class'); |
97 | isa_ok($fwmc_meta->get_attribute('bar'), 'Foo::Meta::Attribute'); |
98 | does_ok($fwmt_meta, 'Foo::Meta::Role'); |
99 | does_ok($fwmt_meta->get_attribute('bar'), 'Foo::Meta::Role::Attribute'); |
100 | |
101 | my $bwmc_meta = BarWithMetaClass->meta; |
102 | my $bwmt_meta = BarWithMetaTrait->meta; |
103 | isa_ok($bwmc_meta, 'Bar::Meta::Class'); |
104 | isa_ok($bwmc_meta->get_attribute('bar'), 'Bar::Meta::Attribute'); |
105 | does_ok($bwmt_meta, 'Bar::Meta::Role'); |
106 | does_ok($bwmt_meta->get_attribute('bar'), 'Bar::Meta::Role::Attribute'); |
107 | |
108 | done_testing; |