manpagez: man pages & more
man Test::TypeTiny(3)
Home | html | info | man
Test::TypeTiny(3)     User Contributed Perl Documentation    Test::TypeTiny(3)



NAME

       Test::TypeTiny - useful functions for testing the efficacy of type
       constraints


SYNOPSIS

          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;


STATUS

       This module is covered by the Type-Tiny stability policy.


DESCRIPTION

       Test::TypeTiny provides a few handy functions for testing type
       constraints.

   Functions
       "should_pass($value, $type, $test_name)"
       "should_pass($value, $type)"
           Test that passes iff $value passes "$type->check".

       "should_fail($value, $type, $test_name)"
       "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 Test::Fatal::matchfor.


ENVIRONMENT

       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).


BUGS

       Please report any bugs to
       <https://github.com/tobyink/p5-type-tiny/issues>.


SEE ALSO

       Type::Tiny(3).

       For an alternative to "should_pass", see Test::Deep::Type(3) which will
       happily accept a Type::Tiny(3) type constraint instead of a
       MooseX::Types(3) one.


AUTHOR

       Toby Inkster <tobyink@cpan.org>.


COPYRIGHT AND LICENCE

       This software is copyright (c) 2013-2014, 2017-2025 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.


DISCLAIMER OF WARRANTIES

       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.

perl v5.34.3                      2025-09-02                 Test::TypeTiny(3)

type-tiny 2.8.3 - Generated Thu Sep 4 13:30:50 CDT 2025
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.