Add new test files
[gitmo/Mouse.git] / t / 001_mouse / 061-metaclass-compatibility.t
1 #!perl
2 use strict;
3 use warnings;
4 use Test::More;
5
6 BEGIN{
7     if($] < 5.008){
8         plan skip_all => "segv happens on 5.6.2";
9     }
10 }
11 use Test::More tests => 4;
12
13 use Mouse::Util qw(does_role);
14
15 {
16     package FooTrait;
17     use Mouse::Role;
18
19     package BarTrait;
20     use Mouse::Role;
21
22     package BaseClass;
23     use Mouse -traits => qw(FooTrait);
24
25     package SubClass;
26     use Mouse -traits => qw(BarTrait);
27
28     extends qw(BaseClass);
29 }
30
31 ok does_role(BaseClass->meta, 'FooTrait'), ' BaseClass->meta->does("FooTrait")';
32 ok!does_role(BaseClass->meta, 'BarTrait'), '!BaseClass->meta->does("BarTrait")';
33
34 ok does_role(SubClass->meta,  'FooTrait'), 'SubClass->meta->does("FooTrait")';
35 ok does_role(SubClass->meta,  'BarTrait'), 'SubClass->meta->does("BarTrait")';
36