summaryrefslogtreecommitdiffstats
path: root/t/30-type-checks.t
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2011-02-21 01:07:16 -0600
committerJesse Luehrs <doy@tozt.net>2011-02-21 01:07:16 -0600
commiteeb792decae28e85e487ebeeb6d56f1994b56c62 (patch)
tree844c44da6a4e81639c59a3d4e521bafa5e09af56 /t/30-type-checks.t
parenteb9a0d361b37c5b3a7d750385f6b3a3300301fbc (diff)
downloadbread-board-declare-eeb792decae28e85e487ebeeb6d56f1994b56c62.tar.gz
bread-board-declare-eeb792decae28e85e487ebeeb6d56f1994b56c62.zip
handle type checks and auto_deref on values returned from services
Diffstat (limited to 't/30-type-checks.t')
-rw-r--r--t/30-type-checks.t26
1 files changed, 26 insertions, 0 deletions
diff --git a/t/30-type-checks.t b/t/30-type-checks.t
new file mode 100644
index 0000000..58f4405
--- /dev/null
+++ b/t/30-type-checks.t
@@ -0,0 +1,26 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use Test::More;
+use Test::Fatal;
+
+{
+ package Foo;
+ use Moose;
+ use MooseX::Bread::Board;
+
+ has foo => (
+ is => 'ro',
+ isa => 'Ref',
+ value => 'FOO',
+ );
+}
+
+{
+ my $foo = Foo->new;
+ like(exception { $foo->foo },
+ qr/^Attribute \(foo\) does not pass the type constraint because: Validation failed for 'Ref' with value FOO/,
+ "error when service returns invalid value");
+}
+
+done_testing;