Commit | Line | Data |
---|---|---|
86530b38 AT |
1 | # $Id: Assert.pm,v 1.2 2002/04/26 05:12:27 schwern Exp $ |
2 | ||
3 | package Test::Harness::Assert; | |
4 | ||
5 | use strict; | |
6 | require Exporter; | |
7 | use vars qw($VERSION @EXPORT @ISA); | |
8 | ||
9 | $VERSION = '0.01'; | |
10 | ||
11 | @ISA = qw(Exporter); | |
12 | @EXPORT = qw(assert); | |
13 | ||
14 | ||
15 | =head1 NAME | |
16 | ||
17 | Test::Harness::Assert - simple assert | |
18 | ||
19 | =head1 SYNOPSIS | |
20 | ||
21 | ### FOR INTERNAL USE ONLY ### | |
22 | ||
23 | use Test::Harness::Assert; | |
24 | ||
25 | assert( EXPR, $name ); | |
26 | ||
27 | =head1 DESCRIPTION | |
28 | ||
29 | A simple assert routine since we don't have Carp::Assert handy. | |
30 | ||
31 | B<For internal use by Test::Harness ONLY!> | |
32 | ||
33 | =head2 Functions | |
34 | ||
35 | =over 4 | |
36 | ||
37 | =item B<assert> | |
38 | ||
39 | assert( EXPR, $name ); | |
40 | ||
41 | If the expression is false the program aborts. | |
42 | ||
43 | =cut | |
44 | ||
45 | sub assert ($;$) { | |
46 | my($assert, $name) = @_; | |
47 | ||
48 | unless( $assert ) { | |
49 | require Carp; | |
50 | my $msg = 'Assert failed'; | |
51 | $msg .= " - '$name'" if defined $name; | |
52 | $msg .= '!'; | |
53 | Carp::croak($msg); | |
54 | } | |
55 | ||
56 | } | |
57 | ||
58 | =head1 AUTHOR | |
59 | ||
60 | Michael G Schwern E<lt>schwern@pobox.comE<gt> | |
61 | ||
62 | =head1 SEE ALSO | |
63 | ||
64 | L<Carp::Assert> | |
65 | ||
66 | =cut | |
67 | ||
68 | 1; |