Commit | Line | Data |
5447ee45 |
1 | use Test::More; |
2 | |
3 | package Foo; |
4 | use Moose; |
5 | |
6 | has 'bar' => ( |
7 | traits => [ qw(MooseX::UndefTolerant::Attribute)], |
8 | is => 'ro', |
9 | isa => 'Num', |
10 | predicate => 'has_bar' |
11 | ); |
12 | |
13 | package Foo2; |
14 | use Moose; |
15 | use MooseX::UndefTolerant; |
16 | |
17 | has 'bar' => ( |
18 | is => 'ro', |
19 | isa => 'Num', |
20 | predicate => 'has_bar' |
21 | ); |
22 | |
23 | package main; |
24 | |
25 | { |
26 | my $foo = Foo->new; |
27 | ok(!$foo->has_bar); |
28 | } |
29 | |
30 | { |
31 | my $foo = Foo->new(bar => undef); |
32 | ok(!$foo->has_bar); |
33 | } |
34 | |
35 | { |
36 | my $foo = Foo2->new(bar => undef); |
37 | ok(!$foo->has_bar); |
38 | } |
39 | |
efcfddbd |
40 | { |
41 | my $foo = Foo2->new(bar => 1234); |
42 | cmp_ok($foo->bar, 'eq', 1234); |
43 | ok($foo->has_bar); |
44 | } |
5447ee45 |
45 | |
efcfddbd |
46 | done_testing; |