diff options
Diffstat (limited to 't/multiple-instantiation.t')
-rw-r--r-- | t/multiple-instantiation.t | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/t/multiple-instantiation.t b/t/multiple-instantiation.t new file mode 100644 index 0000000..c8372c1 --- /dev/null +++ b/t/multiple-instantiation.t @@ -0,0 +1,43 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use Test::More; +use Test::Moose; + +{ + package Bar; + use Moose; + + has foo => ( + is => 'ro', + isa => 'Str', + required => 1, + ); +} + +{ + package Foo; + use Moose; + use Bread::Board::Declare; + + has foo => ( + is => 'ro', + isa => 'Str', + value => 'FOO', + ); + + has bar => ( + is => 'ro', + isa => 'Bar', + dependencies => ['foo'], + ); +} + +with_immutable { +my $foo1 = Foo->new; +is($foo1->bar->foo, 'FOO'); +my $foo2 = Foo->new(foo => 'BAR'); +is($foo2->bar->foo, 'BAR'); +} 'Foo'; + +done_testing; |