use strict;
use warnings;
-use Test::More tests => 10;
+use Test::More;
use Test::Exception;
=pod
This tests to make sure that the inlined constructor
-has all the type constraints in order, even in the
-cases when there is no type constraint available, such
+has all the type constraints in order, even in the
+cases when there is no type constraint available, such
as with a Class::MOP::Attribute object.
=cut
package Foo;
use Moose;
use Moose::Util::TypeConstraints;
-
+
coerce 'Int' => from 'Str' => via { length $_ ? $_ : 69 };
- has 'foo' => (is => 'rw', isa => 'Int');
+ has 'foo' => (is => 'rw', isa => 'Int');
has 'baz' => (is => 'rw', isa => 'Int');
has 'zot' => (is => 'rw', isa => 'Int', init_arg => undef);
has 'moo' => (is => 'rw', isa => 'Int', coerce => 1, default => '', required => 1);
my $mutable_string = $is_immutable ? 'immutable' : 'mutable';
lives_ok {
my $f = Foo->new(foo => 10, bar => "Hello World", baz => 10, zot => 4);
- is($f->moo, 69, "Type coersion works as expected on default ($mutable_string)");
- is($f->boo, 69, "Type coersion works as expected on builder ($mutable_string)");
+ is($f->moo, 69, "Type coercion works as expected on default ($mutable_string)");
+ is($f->boo, 69, "Type coercion works as expected on builder ($mutable_string)");
} "... this passes the constuctor correctly ($mutable_string)";
lives_ok {
Foo->meta->make_immutable(debug => 0) unless $is_immutable;
}
-
-
+done_testing;