Test::TypeTiny - useful functions for testing the efficacy of type constraints
use strict;
use warnings;
use Test::More;
use Test::TypeTiny;
use Types::Mine qw(Integer Number);
should_pass(1, Integer);
should_pass(-1, Integer);
should_pass(0, Integer);
should_fail(2.5, Integer);
ok_subtype(Number, Integer);
done_testing;
This module is covered by the
Type-Tiny stability policy.
the Test::TypeTiny manpage provides a few handy functions for testing type constraints.
- should_pass($value, $type, $test_name)
-
should_pass($value, $type) should_pass($value, $type)
-
Test that passes iff
$value passes $type->check .
- should_fail($value, $type, $test_name)
-
should_fail($value, $type) should_fail($value, $type)
-
Test that passes iff
$value fails $type->check .
- ok_subtype($type, @subtypes)
-
Test that passes iff all
@subtypes are subtypes of $type .
- EXTENDED_TESTING
-
Exportable boolean constant.
- matchfor(@things)
-
Assistant for matching exceptions. Not exported by default.
See also the Test::Fatal::matchfor manpage.
If the EXTENDED_TESTING environment variable is set to true, this
module will promote each should_pass or should_fail test into a
subtest block and test the type constraint in both an inlined and
non-inlined manner.
This variable must be set at compile time (i.e. before this module is
loaded).
Please report any bugs to
http://rt.cpan.org/Dist/Display.html.
the Type::Tiny manpage.
For an alternative to should_pass , see the Test::Deep::Type manpage which will
happily accept a Type::Tiny type constraint instead of a MooseX::Types one.
Toby Inkster <tobyink@cpan.org>.
This software is copyright (c) 2013-2014, 2017-2019 by Toby Inkster.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
THIS PACKAGE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|