Make sure that redefining role metaclass does not affect other classes
[gitmo/Moose.git] / t / 030_roles / 038_role_metaclass.t
CommitLineData
5ed3b694 1#!/usr/bin/env perl
2use strict;
3use warnings;
f7e636ad 4use Test::More tests => 2;
5ed3b694 5use Moose ();
6
7BEGIN {
8
9 package My::Meta::Role;
10 use Moose;
11 extends 'Moose::Meta::Role';
12
13 has test_serial => (
14 is => 'ro',
15 isa => 'Int',
16 default => 1,
17 );
18 no Moose;
19
20}
21{
22
23 package MyRole;
24 use metaclass 'Moose::Meta::Class' =>
25 ( role_metaclass => 'My::Meta::Role' );
26 use Moose::Role;
27
28 no Moose::Role;
f7e636ad 29
30 package MyOtherRole;
31 use Moose::Role;
32
33 no Moose::Role;
5ed3b694 34};
35
36isa_ok( MyRole->meta, 'My::Meta::Role' );
f7e636ad 37isa_ok( MyOtherRole->meta, 'Moose::Meta::Role' );
5ed3b694 38
39# my $role = MyRole->meta->create_anon_role;
40# is( $role->test_serial, 1, "default value for the serial attribute" );