summaryrefslogtreecommitdiff
path: root/pear/tests/PEAR_ErrorStack/Error_Stack_TestCase_pushpop.php
diff options
context:
space:
mode:
Diffstat (limited to 'pear/tests/PEAR_ErrorStack/Error_Stack_TestCase_pushpop.php')
-rw-r--r--pear/tests/PEAR_ErrorStack/Error_Stack_TestCase_pushpop.php367
1 files changed, 0 insertions, 367 deletions
diff --git a/pear/tests/PEAR_ErrorStack/Error_Stack_TestCase_pushpop.php b/pear/tests/PEAR_ErrorStack/Error_Stack_TestCase_pushpop.php
deleted file mode 100644
index 2e029629a0..0000000000
--- a/pear/tests/PEAR_ErrorStack/Error_Stack_TestCase_pushpop.php
+++ /dev/null
@@ -1,367 +0,0 @@
-<?php
-
-/**
- * API Unit tests for PEAR_ErrorStack package.
- *
- * @version $Id$
- * @author Laurent Laville <pear@laurent-laville.org> portions from HTML_CSS
- * @author Greg Beaver
- * @package PEAR_ErrorStack
- */
-
-/**
- * @package PEAR_ErrorStack
- */
-
-class Error_Stack_TestCase_pushpop extends PHPUnit_TestCase
-{
- /**
- * A PEAR_PackageFileManager object
- * @var object
- */
- var $packagexml;
-
- function Error_Stack_TestCase_pushpop($name)
- {
- $this->PHPUnit_TestCase($name);
- }
-
- function setUp()
- {
- error_reporting(E_ALL);
- $this->errorOccured = false;
- set_error_handler(array(&$this, 'errorHandler'));
- $this->stack = new PEAR_ErrorStack('test');
- $s = &PEAR_ErrorStack::singleton('PEAR_ErrorStack');
- $s->pushCallback(array('PEAR_ErrorStack', '_handleError'));
- }
-
- function tearDown()
- {
- unset($this->stack);
- unset($GLOBALS['_PEAR_ERRORSTACK_SINGLETON']);
- }
-
-
- function _stripWhitespace($str)
- {
- return preg_replace('/\\s+/', '', $str);
- }
-
- function _methodExists($name)
- {
- if (in_array(strtolower($name), get_class_methods($this->stack))) {
- return true;
- }
- $this->assertTrue(false, 'method '. $name . ' not implemented in ' . get_class($this->stack));
- return false;
- }
-
- function errorHandler($errno, $errstr, $errfile, $errline) {
- //die("$errstr in $errfile at line $errline: $errstr");
- $this->errorOccured = true;
- $this->assertTrue(false, "$errstr at line $errline, $errfile");
- }
-
- function test_valid_basic()
- {
- if (!$this->_methodExists('push')) {
- return;
- }
- if (!$this->_methodExists('pop')) {
- return;
- }
- $this->stack->push(1);
- $err = $this->stack->pop();
- unset($err['context']);
- unset($err['time']);
- $this->assertEquals(
- array(
- 'code' => 1,
- 'params' => array(),
- 'package' => 'test',
- 'message' => '',
- 'level' => 'error',
- ),
- $err, 'popped something else'
- );
- $err = $this->stack->pop();
- $this->assertFalse($err, 'stack not empty!');
- }
-
- function test_valid_params()
- {
- if (!$this->_methodExists('push')) {
- return;
- }
- if (!$this->_methodExists('pop')) {
- return;
- }
- $z = $this->stack->push(2, 'exception', array('my' => 'param'), 'hello',
- array('test'), array(array('file' => 'boof', 'line' => 34)));
- $err = $this->stack->pop('exception');
- $this->assertEquals($z, $err, 'popped different error');
- unset($err['time']);
- $this->assertEquals(
- array(
- 'code' => 2,
- 'params' => array('my' => 'param'),
- 'package' => 'test',
- 'message' => 'hello',
- 'level' => 'exception',
- 'context' =>
- array(
- 'file' => 'boof',
- 'line' => 34,
- ),
- 'repackage' => array('test'),
- ),
- $err, 'popped something else'
- );
- $err = $this->stack->pop();
- $this->assertFalse($err, 'stack not empty!');
- }
-
- function test_valid_paramscompat()
- {
- if (!$this->_methodExists('push')) {
- return;
- }
- if (!$this->_methodExists('pop')) {
- return;
- }
- $this->stack = new PEAR_ErrorStack('test', false, null, true);
- $z = $this->stack->push(2, 'exception', array('my' => 'param'), 'hello',
- array('test'), array(array('file' => 'boof', 'line' => 34)));
- $this->assertEquals('pear_error', strtolower(get_class($z)), 'not pear_error');
- $err = $this->stack->pop('exception');
- if (is_a($z, 'PEAR_Error')) {
- $this->assertEquals($err, $z->getUserInfo(), 'userinfo wrong');
- }
- unset($err['time']);
- $this->assertEquals(
- array(
- 'code' => 2,
- 'params' => array('my' => 'param'),
- 'package' => 'test',
- 'message' => 'hello',
- 'level' => 'exception',
- 'context' =>
- array(
- 'file' => 'boof',
- 'line' => 34,
- ),
- 'repackage' => array('test'),
- ),
- $err, 'popped something else'
- );
- $err = $this->stack->pop();
- $this->assertFalse($err, 'stack not empty!');
- }
-
- function contextcallback($code, $params, $trace)
- {
- $this->assertEquals(4, $code, 'wrong context code');
- $this->assertEquals(array('hello' => 6), $params, 'wrong context params');
- $this->wasCalled = true;
- return array('hi' => 'there', 'you' => 'fool');
- }
-
- function test_valid_contextconstructor()
- {
- if (!$this->_methodExists('push')) {
- return;
- }
- if (!$this->_methodExists('pop')) {
- return;
- }
- $this->stack = new PEAR_ErrorStack('test', false, array(&$this, 'contextcallback'));
- $this->wasCalled = false;
- $this->stack->push(4, 'error', array('hello' => 6));
- $this->assertTrue($this->wasCalled, 'context callback was not called!');
- $err = $this->stack->pop();
- unset($err['time']);
- $this->assertEquals(
- array(
- 'code' => 4,
- 'params' => array('hello' => 6),
- 'package' => 'test',
- 'message' => '',
- 'level' => 'error',
- 'context' => array('hi' => 'there', 'you' => 'fool'),
- ),
- $err, 'popped something else'
- );
- $err = $this->stack->pop();
- $this->assertFalse($err, 'stack not empty!');
- }
-
- function test_valid_contextsingleton()
- {
- if (!$this->_methodExists('push')) {
- return;
- }
- if (!$this->_methodExists('pop')) {
- return;
- }
- if (!$this->_methodExists('singleton')) {
- return;
- }
- $this->stack = &PEAR_ErrorStack::singleton('test', false, array(&$this, 'contextcallback'));
- $this->wasCalled = false;
- $this->stack->push(4, 'error', array('hello' => 6));
- $this->assertTrue($this->wasCalled, 'context callback was not called!');
- $err = $this->stack->pop();
- unset($err['time']);
- $this->assertEquals(
- array(
- 'code' => 4,
- 'params' => array('hello' => 6),
- 'package' => 'test',
- 'message' => '',
- 'level' => 'error',
- 'context' => array('hi' => 'there', 'you' => 'fool'),
- ),
- $err, 'popped something else'
- );
- $err = $this->stack->pop();
- $this->assertFalse($err, 'stack not empty!');
- }
-
- function test_valid_context_setcontext()
- {
- if (!$this->_methodExists('push')) {
- return;
- }
- if (!$this->_methodExists('pop')) {
- return;
- }
- if (!$this->_methodExists('setContextCallback')) {
- return;
- }
- $this->stack->setContextCallback(array(&$this, 'contextcallback'));
- $this->wasCalled = false;
- $this->stack->push(4, 'error', array('hello' => 6));
- $this->assertTrue($this->wasCalled, 'context callback was not called!');
- $err = $this->stack->pop();
- unset($err['time']);
- $this->assertEquals(
- array(
- 'code' => 4,
- 'params' => array('hello' => 6),
- 'package' => 'test',
- 'message' => '',
- 'level' => 'error',
- 'context' => array('hi' => 'there', 'you' => 'fool'),
- ),
- $err, 'popped something else'
- );
- $err = $this->stack->pop();
- $this->assertFalse($err, 'stack not empty!');
- }
-
- function messagecallback(&$stack, $err)
- {
- $this->assertEquals(4, $err['code'], 'wrong message code');
- $this->assertEquals(array('hello' => 6), $err['params'], 'wrong message params');
- $this->assertEquals('test1', $err['package'], 'wrong error stack');
- $this->wasCalled = true;
- return 'my silly message';
- }
-
- function test_valid_msgcallbackconstructor()
- {
- if (!$this->_methodExists('push')) {
- return;
- }
- if (!$this->_methodExists('pop')) {
- return;
- }
- $this->stack = new PEAR_ErrorStack('test1', array(&$this, 'messagecallback'));
- $this->wasCalled = false;
- $this->stack->push(4, 'error', array('hello' => 6));
- $this->assertTrue($this->wasCalled, 'message callback was not called!');
- $err = $this->stack->pop();
- unset($err['time']);
- unset($err['context']);
- $this->assertEquals(
- array(
- 'code' => 4,
- 'params' => array('hello' => 6),
- 'package' => 'test1',
- 'message' => 'my silly message',
- 'level' => 'error',
- ),
- $err, 'popped something else'
- );
- $err = $this->stack->pop();
- $this->assertFalse($err, 'stack not empty!');
- }
-
- function test_valid_msgcallbacksingleton()
- {
- if (!$this->_methodExists('push')) {
- return;
- }
- if (!$this->_methodExists('pop')) {
- return;
- }
- if (!$this->_methodExists('singleton')) {
- return;
- }
- $this->stack = &PEAR_ErrorStack::singleton('test1', array(&$this, 'messagecallback'));
- $this->wasCalled = false;
- $this->stack->push(4, 'error', array('hello' => 6));
- $this->assertTrue($this->wasCalled, 'message callback was not called!');
- $err = $this->stack->pop();
- unset($err['time']);
- unset($err['context']);
- $this->assertEquals(
- array(
- 'code' => 4,
- 'params' => array('hello' => 6),
- 'package' => 'test1',
- 'message' => 'my silly message',
- 'level' => 'error',
- ),
- $err, 'popped something else'
- );
- $err = $this->stack->pop();
- $this->assertFalse($err, 'stack not empty!');
- }
-
- function test_valid_msgcallback_setmsgcallback()
- {
- if (!$this->_methodExists('push')) {
- return;
- }
- if (!$this->_methodExists('pop')) {
- return;
- }
- if (!$this->_methodExists('setContextCallback')) {
- return;
- }
- $this->stack = new PEAR_ErrorStack('test1');
- $this->stack->setMessageCallback(array(&$this, 'messagecallback'));
- $this->wasCalled = false;
- $this->stack->push(4, 'error', array('hello' => 6));
- $this->assertTrue($this->wasCalled, 'message callback was not called!');
- $err = $this->stack->pop();
- unset($err['time']);
- unset($err['context']);
- $this->assertEquals(
- array(
- 'code' => 4,
- 'params' => array('hello' => 6),
- 'package' => 'test1',
- 'message' => 'my silly message',
- 'level' => 'error',
- ),
- $err, 'popped something else'
- );
- $err = $this->stack->pop();
- $this->assertFalse($err, 'stack not empty!');
- }
-}
-
-?>