use Test::More;
package Foo;
use Moose;
use MooseX::UndefTolerant;
has 'bar' => (
is => 'ro',
isa => 'Num',
predicate => 'has_bar'
);
__PACKAGE__->meta->make_immutable;
package main;
{
my $foo = Foo->new;
ok(!$foo->has_bar);
}
{
my $foo = Foo->new(bar => undef);
ok(!$foo->has_bar);
}
{
my $foo = Foo->new(bar => 1234);
cmp_ok($foo->bar, 'eq', 1234);
ok($foo->has_bar);
}
done_testing;