Test::Deep::Type(3pm) | User Contributed Perl Documentation | Test::Deep::Type(3pm) |
Test::Deep::Type - A Test::Deep plugin for validating type constraints
version 0.008
use Test::More; use Test::Deep; use Test::Deep::Type; use MooseX::Types::Moose 'Str'; cmp_deeply( { message => 'ack I am slain', counter => 123, }, { message => is_type(Str), counter => is_type(sub { die "not an integer" unless int($_[0]) eq $_[0] }), }, 'message is a plain string, counter is a number', );
This is a Test::Deep plugin that provides the sub "is_type" to indicate that the data being tested must validate against the passed type. This is an actual type object, not a string name -- for example something provided via MooseX::Types, or a plain old coderef that returns a bool (such as what might be used in a Moo type constraint).
Exported by default; to be used within a Test::Deep comparison function such as cmp_deeply. As this module aims to be a solution for many popular type systems, we attempt to use the type in multiple ways:
Type::Tiny types fall into this category, and are fully supported.
Regular strings describing a type under a particular system (e.g. Moose, Params::Validate) are not currently supported.
Bugs may be submitted through the RT bug tracker <https://rt.cpan.org/Public/Dist/Display.html?Name=Test-Deep-Type> (or bug-Test-Deep-Type@rt.cpan.org <mailto:bug-Test-Deep-Type@rt.cpan.org>).
There is also a mailing list available for users of this distribution, at <http://lists.perl.org/list/perl-qa.html>.
There is also an irc channel available for users of this distribution, at "#perl" on "irc.perl.org" <irc://irc.perl.org/#perl-qa>.
I am also usually active on irc, as 'ether' at "irc.perl.org".
Karen Etheridge <ether@cpan.org>
Graham Knop <haarg@haarg.org>
This software is copyright (c) 2013 by Karen Etheridge.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
2021-01-07 | perl v5.32.0 |