NAME
Test::TypeConstraints - testing whether some value is valid as (Moose|Mouse)::Meta::TypeConstraint
SYNOPSIS
use Test::TypeConstraints qw(type_isa);
type_isa($got, "ArrayRef[Int]", "type should be ArrayRef[Int]");
DESCRIPTION
Test::TypeConstraints is for testing whether some value is valid as (Moose|Mouse)::Meta::TypeConstraint.
METHOD
type_isa($got, $typename_or_type, $test_name, %options)
$got is value for checking.
$typename_or_type is a Classname or Mouse::Meta::TypeConstraint name or "Mouse::Meta::TypeConstraint" object or "Moose::Meta::TypeConstraint::Class" object.
%options is Hash. value is followings:
coerce: Bool or CodeRef
If true, it will try coercion when checking a value.
If a CodeRef is given, it will be run and passed in the coerced value for additional testing.
type_isa $value, "Some::Class", "coerce to Some::Class", coerce => sub {
isa_ok $_[0], "Some::Class";
is $_[0]->value, $value;
};
type_does($got, $rolename_or_role, $test_name, %options)
$got is value for checking.
$typename_or_type is a Classname or Mouse::Meta::TypeConstraint name or "Mouse::Meta::TypeConstraint" object or "Moose::Meta::TypeConstraint::Role" object.
%options is Hash. value is followings:
coerce: Bool or CodeRef
Same as type_isa's coerce option.
type_isnt($got, $typename_or_type, $test_name, %options)
type_doesnt($got, $rolename_or_role, $test_name, %options)
The opposite of type_isa
and type_doesnt
respectively and takes the same arguments and options. Checks that $got is not of the given type or role.
AUTHOR
Keiji Yoshimi <walf443 at gmail dot com>
THANKS TO
- schwern
- gfx
- tokuhirom
SEE ALSO
+<Mouse::Util::TypeConstraints>, +<Moose::Util::TypeConstraints>
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.