From eacda40831fc234b63dac829abf749d438bef75a Mon Sep 17 00:00:00 2001 From: franck cuny Date: Sat, 19 Jun 2010 15:08:09 +0200 Subject: add test for RT#58330 --- t/90_bug.t | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 t/90_bug.t diff --git a/t/90_bug.t b/t/90_bug.t new file mode 100644 index 0000000..45228cc --- /dev/null +++ b/t/90_bug.t @@ -0,0 +1,44 @@ +use strict; +use warnings; + +use Test::More; +use Test::Exception; + +package Foo; +use Moose; +use MooseX::Privacy; + +has foo => ( + is => 'rw', + isa => 'Str', + predicate => 'has_foo', + clearer => '_clear_foo', + lazy => 1, + default => 'BooM!', + traits => [qw/Private/], +); + +has bar => ( + is => 'ro', + isa => 'Str', + traits => [qw/Private/], +); + +sub public_foo { shift->foo } +sub public_foo_clearer { shift->_clear_foo } +sub public_foo_predicate { shift->has_foo ? return 1 : return 0 } + +package main; + +my $o = Foo->new(); +dies_ok { $o->foo }; +dies_ok { $o->bar }; +dies_ok { $o->has_foo }; +dies_ok { $o->_clear_foo }; + +is $o->public_foo, 'BooM!'; +ok $o->public_foo_predicate; +ok $o->public_foo_clearer; +ok !$o->public_foo_predicate; + +done_testing; -- cgit 1.4.1