diff options
Diffstat (limited to 't/32-defaults.t')
-rw-r--r-- | t/32-defaults.t | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/t/32-defaults.t b/t/32-defaults.t new file mode 100644 index 0000000..d3f1485 --- /dev/null +++ b/t/32-defaults.t @@ -0,0 +1,55 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use Test::More; +use Test::Fatal; + +{ + package Foo; + use Moose; + use MooseX::Bread::Board; + + ::like(::exception { + has foo => ( + is => 'ro', + isa => 'Str', + default => 'OOF', + value => 'FOO', + ); + }, qr/default is not valid when Bread::Board service options are set/, + "can't set a default when creating a service"); + + ::like(::exception { + has bar => ( + is => 'ro', + isa => 'Str', + default => sub { 'OOF' }, + value => 'FOO', + ); + }, qr/default is not valid when Bread::Board service options are set/, + "can't set a default when creating a service"); + + ::like(::exception { + has baz => ( + is => 'ro', + isa => 'Str', + lazy => 1, + default => 'OOF', + value => 'FOO', + ); + }, qr/default is not valid when Bread::Board service options are set/, + "can't set a default when creating a service"); + + ::like(::exception { + has quux => ( + is => 'ro', + isa => 'Str', + lazy => 1, + default => sub { 'OOF' }, + value => 'FOO', + ); + }, qr/default is not valid when Bread::Board service options are set/, + "can't set a default when creating a service"); +} + +done_testing; |