Blame xt/moo-consume-mouse-role-coerce.t

Packit 7187a4
use Moo::_strictures;
Packit 7187a4
use Test::More "$]" < 5.008009
Packit 7187a4
  ? (skip_all => 'Mouse is broken on perl <= 5.8.8')
Packit 7187a4
  : ();
Packit 7187a4
Packit 7187a4
{
Packit 7187a4
    package RoleOne;
Packit 7187a4
    use Mouse::Role;
Packit 7187a4
    use Mouse::Util::TypeConstraints;
Packit 7187a4
Packit 7187a4
    subtype 'Foo', as 'Int';
Packit 7187a4
    coerce 'Foo', from 'Str', via { 3 };
Packit 7187a4
Packit 7187a4
    has foo => (
Packit 7187a4
        is => 'rw',
Packit 7187a4
        isa => 'Foo',
Packit 7187a4
        coerce => 1,
Packit 7187a4
        clearer => '_clear_foo',
Packit 7187a4
    );
Packit 7187a4
}
Packit 7187a4
{
Packit 7187a4
    package Class;
Packit 7187a4
    use Moo; # Works if use Moose..
Packit 7187a4
Packit 7187a4
    with 'RoleOne';
Packit 7187a4
}
Packit 7187a4
Packit 7187a4
my $i = Class->new( foo => 'bar' );
Packit 7187a4
is $i->foo, 3, 'coerce from type works';
Packit 7187a4
Packit 7187a4
done_testing;