Changelogging
[gitmo/Mouse.git] / t-failing / 400_moose_util / 006_create_alias.t
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;