Assert-Conditional
view release on metacpan or search on metacpan
lib/Assert/Conditional.pm view on Meta::CPAN
sub _run_code_test($$) {
my($code, $joy) = @_;
assert_coderef($code);
return if !!&$code() == !!$joy;
botch sprintf "%s assertion %s is sadly %s",
$joy ? "happy" : "unhappy",
subname_or_code($code),
$joy ? "false" : "true";
}
sub assert_happy_code(&)
:Assert( qw[boolean code] )
{
my($cref) = @_;
_run_code_test($cref => 1);
}
sub assert_unhappy_code(&)
:Assert( qw[boolean code] )
{
my($cref) = @_;
_run_code_test($cref => 0);
}
sub assert_open_handle($)
:Assert( qw[io file] )
{
my($arg) = @_;
( run in 1.355 second using v1.01-cache-2.11-cpan-49f99fa48dc )