Test::Unit::Assertion.3pm

Langue: en

Autres versions - même langue

Version: 2001-12-20 (fedora - 01/12/10)

Section: 3 (Bibliothèques de fonctions)

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