sub not_ok(&$) { my $coderef = shift; my $message = shift; eval $coderef; ok( $@, $message) } # call this way not_ok( sub { mysub('bad data') }, 'message')