NAME Test::Assert - Assertion methods for those who like JUnit. SYNOPSIS # Use as base class package My::TestMethod; use base 'Test::Assert'; sub test_method { my $self = shift; $self->assert_true(1, "pass"); $self->assert_true(0, "fail"); } # Use as imported methods package My::Test; use Test::Assert ':all'; assert_true(1, "pass"); assert_true(0, "fail"); use Test::More; assert_test(sub { require_ok($module) }); # Use for debugging purposes # Assertions are compiled only if Test::Assert was used # in the main package. package My::Package; use Test::Assert 'fail', 'DEBUG'; my $state = do_something(); assert_true($state >= 1 && $state <=2) if DEBUG; if ($state == 1) { # 1st state do_foo(); } elsif ($state == 2) { # 2nd and last state do_bar(); } my $a = get_a(); my $b = get_b(); assert_num_not_equals(0, $b) if DEBUG; my $c = $a / $b; $ perl -MTest::Assert script.pl # sets Test::Assert::DEBUG to 1 DESCRIPTION This class provides a set of assertion methods useful for writing tests. The API is based on JUnit4 and Test::Unit and the methods die on failure. The assertion methods can be used in class which is derived from Test::Assert or used as standard Perl functions after importing them into user's namespace. Test::Assert can also wrap standard Test::Simple, Test::More or other Test::Builder-based tests. The assertions can be also used for run-time checking. AUTHOR Piotr Roszatycki COPYRIGHT Copyright (C) 2008 by Piotr Roszatycki . This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html