Commit | Line | Data |
c47cf415 |
1 | #!/usr/bin/env 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 | use strict; |
6 | use warnings; |
7 | use Test::More; |
8 | $TODO = q{Mouse is not yet completed}; |
9 | |
10 | { |
11 | package Foo::Role; |
12 | use Mouse::Role; |
13 | has 'a' => (is => 'ro'); |
14 | has 'b' => (is => 'ro'); |
15 | has 'c' => (is => 'ro'); |
16 | } |
17 | |
18 | { |
19 | package Foo; |
20 | use Mouse; |
21 | has 'd' => (is => 'ro'); |
22 | with 'Foo::Role'; |
23 | has 'e' => (is => 'ro'); |
24 | } |
25 | |
26 | my %role_insertion_order = ( |
27 | a => 0, |
28 | b => 1, |
29 | c => 2, |
30 | ); |
31 | |
32 | is_deeply({ map { $_->name => $_->insertion_order } map { Foo::Role->meta->get_attribute($_) } Foo::Role->meta->get_attribute_list }, \%role_insertion_order, "right insertion order within the role"); |
33 | |
34 | my %class_insertion_order = ( |
35 | d => 0, |
36 | a => 1, |
37 | b => 2, |
38 | c => 3, |
39 | e => 4, |
40 | ); |
41 | |
42 | { local $TODO = "insertion order is lost during role application"; |
43 | is_deeply({ map { $_->name => $_->insertion_order } Foo->meta->get_all_attributes }, \%class_insertion_order, "right insertion order within the class"); |
44 | } |
45 | |
46 | done_testing; |