Test::Unit::Assertion:UsereContributed Perl DoTest::Unit::Assertion::Regexp(3)NAMETest::Unit::Assertion::Regexp - Assertion with regex matching
SYNOPSIS
require Test::Unit::Assertion::Regexp;
my $assert_re =
Test::Unit::Assertion::Regexp->new(qr/a_pattern/);
$assert_re->do_assertion('a_string');
This is rather more detail than the average user will need.
Test::Unit::Assertion::Regexp objects are generated automagically by
Test::Unit::Assert::assert when it is passed a regular expression as
its first parameter.
sub test_foo {
...
$self->assert(qr/some_pattern/, $result);
}
If the assertion fails then the object throws an exception with details
of the pattern and the string it failed to match against.
Note that if you need to do a 'string does not match this pattern' type
of assertion then you can do:
$self->assert(qr/(?!some_pattern)/, $some_string)
ie. Make use of the negative lookahead assertion.
IMPLEMENTSTest::Unit::Assertion::Regexp implements the Test::Unit::Assertion
interface, which means it can be plugged into the Test::Unit::TestCase
and friends' "assert" method with no ill effects.
DESCRIPTION
The class is used by the framework to provide sensible 'automatic'
reports when a match fails. The old:
$self->assert(scalar($foo =~ /pattern/), "$foo didn't match /.../");
seems rather clumsy compared to this. If the regexp assertion fails,
then the user is given a sensible error message, with the pattern and
the string that failed to match it...
AUTHOR
Copyright (c) 2001 Piers Cawley <pdcawley@iterative-software.com>.
All rights reserved. This program is free software; you can
redistribute it and/or modify it under the same terms as Perl itself.
SEE ALSO
· Test::Unit::TestCase
· Test::Unit::Assertion
perl v5.14.1 2002-01-08 Test::Unit::Assertion::Regexp(3)