Moose used an incorrect cast at the C-level resulting in errors with >2**32 IV's...
[gitmo/Mouse.git] / t / 900_bug / 003_RT50421.t
1 #!/usr/bin/perl -w
2 use Test;
3
4 plan tests => 3;
5
6 {
7     package Class;
8     sub new {}
9 }
10
11 {
12     package MouseClass;
13     use Mouse;
14 }
15
16
17 {
18     package Foo;
19
20     use Mouse;
21
22     has unknown => (
23         is  => 'rw',
24         isa => 'HashRef[Unknown]'
25     );
26
27     has class   => (
28         is      => 'rw',
29         isa     => 'HashRef[Class]',
30     );
31
32     has mouse   => (
33         is      => 'rw',
34         isa     => 'HashRef[MouseClass]',
35     );
36 }
37
38
39 my $obj = Foo->new;
40 ok eval { $obj->unknown({}); };
41 ok eval { $obj->class({}); };
42 ok eval { $obj->mouse({}); };