Convert all tests to done_testing.
[gitmo/Moose.git] / t / 400_moose_util / 006_create_alias.t
1 #!/usr/bin/perl
2
3 use strict;
4 use warnings;
5
6 use Test::More;
7 use Test::Moose qw(does_ok);
8
9 BEGIN {
10     package Foo::Meta::Role;
11     use Moose::Role;
12     Moose::Util::meta_class_alias
13         FooRole => 'Foo::Meta::Role';
14
15     package Foo::Meta::Class;
16     use Moose;
17     extends 'Moose::Meta::Class';
18     with 'Foo::Meta::Role';
19     Moose::Util::meta_class_alias
20         FooClass => 'Foo::Meta::Class';
21
22     package Foo::Meta::Role::Attribute;
23     use Moose::Role;
24     Moose::Util::meta_attribute_alias
25         FooAttrRole => 'Foo::Meta::Role::Attribute';
26
27     package Foo::Meta::Attribute;
28     use Moose;
29     extends 'Moose::Meta::Attribute';
30     with 'Foo::Meta::Role::Attribute';
31     Moose::Util::meta_attribute_alias
32         FooAttrClass => 'Foo::Meta::Attribute';
33
34     package Bar::Meta::Role;
35     use Moose::Role;
36     Moose::Util::meta_class_alias 'BarRole';
37
38     package Bar::Meta::Class;
39     use Moose;
40     extends 'Moose::Meta::Class';
41     with 'Bar::Meta::Role';
42     Moose::Util::meta_class_alias 'BarClass';
43
44     package Bar::Meta::Role::Attribute;
45     use Moose::Role;
46     Moose::Util::meta_attribute_alias 'BarAttrRole';
47
48     package Bar::Meta::Attribute;
49     use Moose;
50     extends 'Moose::Meta::Attribute';
51     with 'Bar::Meta::Role::Attribute';
52     Moose::Util::meta_attribute_alias 'BarAttrClass';
53 }
54
55 package FooWithMetaClass;
56 use Moose -metaclass => 'FooClass';
57
58 has bar => (
59     metaclass => 'FooAttrClass',
60     is        => 'ro',
61 );
62
63
64 package FooWithMetaTrait;
65 use Moose -traits => 'FooRole';
66
67 has bar => (
68     traits => [qw(FooAttrRole)],
69     is     => 'ro',
70 );
71
72 package BarWithMetaClass;
73 use Moose -metaclass => 'BarClass';
74
75 has bar => (
76     metaclass => 'BarAttrClass',
77     is        => 'ro',
78 );
79
80
81 package BarWithMetaTrait;
82 use Moose -traits => 'BarRole';
83
84 has bar => (
85     traits => [qw(BarAttrRole)],
86     is     => 'ro',
87 );
88
89 package main;
90 my $fwmc_meta = FooWithMetaClass->meta;
91 my $fwmt_meta = FooWithMetaTrait->meta;
92 isa_ok($fwmc_meta, 'Foo::Meta::Class');
93 isa_ok($fwmc_meta->get_attribute('bar'), 'Foo::Meta::Attribute');
94 does_ok($fwmt_meta, 'Foo::Meta::Role');
95 does_ok($fwmt_meta->get_attribute('bar'), 'Foo::Meta::Role::Attribute');
96
97 my $bwmc_meta = BarWithMetaClass->meta;
98 my $bwmt_meta = BarWithMetaTrait->meta;
99 isa_ok($bwmc_meta, 'Bar::Meta::Class');
100 isa_ok($bwmc_meta->get_attribute('bar'), 'Bar::Meta::Attribute');
101 does_ok($bwmt_meta, 'Bar::Meta::Role');
102 does_ok($bwmt_meta->get_attribute('bar'), 'Bar::Meta::Role::Attribute');
103
104 done_testing;