File: test_valid_contextcallback_constructor.phpt

package info (click to toggle)
php-pear 1%3A1.10.1%2Bsubmodules%2Bnotgz-9%2Bdeb9u1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 18,600 kB
  • sloc: php: 51,665; ansic: 38,629; xml: 32,572; yacc: 677; pascal: 452; makefile: 122; sh: 116
file content (43 lines) | stat: -rw-r--r-- 1,182 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
--TEST--
PEAR_ErrorStack->push() context callback set in constructor
--SKIPIF--
<?php
if (!getenv('PHP_PEAR_RUNTESTS')) {
    echo 'skip';
}
?>
--FILE--
<?php
require_once dirname(__FILE__) . DIRECTORY_SEPARATOR . 'setup.php.inc';
function contextcallback($code, $params, $trace)
{
    global $wasCalled, $phpunit;
    $phpunit->assertEquals(4, $code, 'wrong context code');
    $phpunit->assertEquals(array('hello' => 6), $params, 'wrong context params');
    $wasCalled = true;
    return array('hi' => 'there', 'you' => 'fool');
}
    
$stack = new PEAR_ErrorStack('test', false, 'contextcallback');
$wasCalled = false;
$stack->push(4, 'error', array('hello' => 6));
$phpunit->assertTrue($wasCalled, 'context callback was not called!');
$err = $stack->pop();
unset($err['time']);
$phpunit->assertEquals(
    array(
        'code' => 4,
        'params' => array('hello' => 6),
        'package' => 'test',
        'level' => 'error',
        'context' => array('hi' => 'there', 'you' => 'fool'),
        'message' => '',
    ),
    $err, 'popped something else'
);
$err = $stack->pop();
$phpunit->assertNull($err, 'stack not empty!');
echo 'tests done';
?>
--EXPECT--
tests done