logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Test::Unit::Assertion - The abstract base class for assertions

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.

Name

       Any assertion class that expects to plug into Test::Unit::Assert needs to implement this interface.

   Requiredmethods
       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.

See Also

       •   Test::Unit::Assert

       •   Test::Unit::CodeRef

       •   Test::Unit::Regexp

perl v5.38.2                                       2024-07-27                         Test::Unit::Assertion(3pm)

See Also