NAME¶
Test::Unit::Assertion - The abstract base class for assertions
NAME¶
Any assertion class that expects to plug into Test::Unit::Assert needs to
implement this interface.
Required methods
- new
- Creates a new assertion object. Takes whatever arguments
you desire. Isn't strictly necessary for the framework to work with this
class but is generally considered a good idea.
- do_assertion
- This is the important one. If Test::Unit::Assert::assert is
called with an object as its first argument then it does:
$_[0]->do_assertion(@_[1 .. $#_]) ||
$self->fail("Assertion failed");
This means that "do_assertion" should return true if the assertion
succeeds and false if it doesn't. Or, you can fail by throwing a
Test::Unit::Failure object, which will get caught further up the stack and
used to produce a sensible error report. Generally it's good practice for
do_assertion to die with a meaningful error on assertion failure rather
than just returning false.
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::Assert
- •
- Test::Unit::CodeRef
- •
- Test::Unit::Regexp