NAME¶
Test::Unit::Result - unit testing framework helper class
SYNOPSIS¶
This class is not intended to be used directly
DESCRIPTION¶
This class is used by the framework to record the results of tests, which will
throw an instance of a subclass of Test::Unit::Exception in case of errors or
failures.
To achieve this, this class gets called with a test case as argument. It will
call this test case's run method back and catch any exceptions thrown.
It could be argued that Test::Unit::Result is the heart of the PerlUnit
framework, since TestCase classes vary, and you can use one of several
Test::Unit::TestRunners, but we always gather the results in a
Test::Unit::Result object.
This is the quintessential call tree of the communication needed to record the
results of a given test:
$aTestCase->run() {
# creates result
$aTestResult->run($aTestCase) {
# catches exception and records it
$aTestCase->run_bare() {
# runs test method inside eval
$aTestCase->run_test() {
# calls method $aTestCase->name()
# and propagates exception
# method will call Assert::assert()
# to cause failure if test fails on
# test assertion
# it finds this because $aTestCase is-a Assert
}
}
}
}
Note too that, in the presence of Test::Unit::TestSuites, this call tree can get
a little more convoluted, but if you bear the above in mind it should be
apparent what's going on.
AUTHOR¶
Copyright (c) 2000-2002, 2005 the PerlUnit Development Team (see Test::Unit or
the
AUTHORS file included in this distribution).
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::TestCase
- •
- Test::Unit::Exception