Source for file phpt_test.php.inc
Documentation is available at phpt_test.php.inc
@include_once 'Text/Diff.php';
@include_once 'Text/Diff/Renderer.php';
@include_once 'Text/Diff/Renderer/unified.php';
require_once 'PEAR/ErrorStack.php';
function PEAR_PHPTest ($diffonly = false , $noStackCatch = false )
$this->_diffonly = $diffonly;
$this->_errors = array ();
PEAR ::setErrorHandling (PEAR_ERROR_CALLBACK , array (&$this, 'pearerrorCallback'));
PEAR_ErrorStack ::setDefaultCallback (array (&$this, 'pearerrorstackCallback'));
function pearerrorCallback ($err)
PEAR_ErrorStack ::staticPush ('PEAR_Error', -1 , 'error', array ('obj' => $err),
function pearerrorstackCallback ($err)
function assertPEARError ($err, $message)
if (is_a($err, 'PEAR_Error')) {
echo "Not a PEAR_Error\n";
function assertNoErrors ($message, $trace = null )
if (count($this->_errors) == 0 ) {
$this->_failTest ($trace, $message);
foreach ($this->_errors as $err) {
if ($err['package'] == 'PEAR_Error') {
echo "Unexpected PEAR_Error:\n";
echo 'message "' . $err['message'] . "\"\n";
echo "Unexpected PEAR_ErrorStack error:\n";
echo 'package "' . $err['package'] . "\"\n";
echo 'message "' . $err['message'] . "\"\n";
$this->_errors = array ();
function assertErrors ($errors, $message, $trace = null )
if (!count($this->_errors)) {
$this->_failTest ($trace, $message);
echo "No errors caught, but errors were expected\n";
if (!isset ($errors[0 ])) {
$errors = array ($errors);
foreach ($errors as $err) {
foreach ($this->_errors as $i => $caughterror) {
if ($caughterror['package'] == $err['package']) {
if ($caughterror['message'] == $err['message']) {
unset ($this->_errors[$i]);
$this->_failTest ($trace, $message);
echo "Unthrown error:\n";
if ($err['package'] == 'PEAR_Error') {
echo " error package: \"$err[package]\"\n";
echo " message: \"$err[message]\"\n";
if (count($this->_errors)) {
$this->_failTest ($trace, $message);
foreach ($this->_errors as $err) {
echo "Unexpected error:\n";
if ($err['package'] == 'PEAR_Error') {
echo " error package: \"$err[package]\"\n";
echo " message: \"$err[message]\"\n";
$this->_errors = array ();
function assertTrue ($test, $message)
echo "Unexpected non-true value: \n";
function assertIsa ($control, $test, $message)
if (is_a($test, $control)) {
echo " Unexpected non-$control object: \n";
function assertNull ($test, $message)
echo "Unexpected non-null value: \n";
function assertNotNull ($test, $message)
echo "Unexpected null: \n";
function assertSame ($test, $test1, $message)
echo "Unexpectedly two vars are not the same thing: \n";
function assertNotSame ($test, $test1, $message)
echo "Unexpectedly two vars are the same thing: \n";
function assertFalse ($test, $message)
echo "Unexpected non-false value: \n";
function assertNotTrue ($test, $message)
echo "Unexpected loose true value: \n";
function assertNotFalse ($test, $message)
echo "Unexpected loose false value: \n";
function assertEquals ($control, $test, $message)
echo "Diff of expecting/received:\n";
// Output the diff in unified format.
$renderer = &new Text_Diff_Renderer_unified ();
echo $renderer->render ($diff);
function assertFileExists ($fname, $message)
echo " File '$fname' does not exist, and should\n";
function assertFileNotExists ($fname, $message)
echo " File '$fname' exists, and should not\n";
function _failTest ($trace, $message)
echo 'Test Failure: "' . $message . "\"\n in " . $trace[0 ]['file'] . ' line ' .
$trace[0 ]['line'] . "\n";
$this->_diffonly = false;
Documentation generated on Sun, 17 Jun 2007 02:00:53 -0400 by phpDocumentor 1.3.2. PEAR Logo Copyright © PHP Group 2004.
|