Annotation of embedaddon/php/Zend/tests/bug48770_3.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Bug #48770 (call_user_func_array() fails to call parent from inheriting class)
3: --XFAIL--
4: See Bug #48770
5: --FILE--
6: <?php
7:
8: class A {
9: public function func($str) {
10: var_dump(__METHOD__ .': '. $str);
11: }
12: private function func2($str) {
13: var_dump(__METHOD__ .': '. $str);
14: }
15: protected function func3($str) {
16: var_dump(__METHOD__ .': '. $str);
17: }
18: private function func22($str) {
19: var_dump(__METHOD__ .': '. $str);
20: }
21: }
22:
23: class B extends A {
24: public function func($str) {
25: call_user_func_array(array($this, 'self::func2'), array($str));
26: call_user_func_array(array($this, 'self::func3'), array($str));
27: call_user_func_array(array($this, 'self::inexistent'), array($str));
28: }
29: private function func2($str) {
30: var_dump(__METHOD__ .': '. $str);
31: }
32: protected function func3($str) {
33: var_dump(__METHOD__ .': '. $str);
34: }
35: }
36:
37: class C extends B {
38: public function func($str) {
39: parent::func($str);
40: }
41: }
42:
43: $c = new C;
44: $c->func('This should work!');
45:
46: ?>
47: --EXPECTF--
48: %unicode|string%(27) "B::func2: This should work!"
49: %unicode|string%(27) "B::func3: This should work!"
50:
51: Warning: call_user_func_array() expects parameter 1 to be a valid callback, class 'B' does not have a method 'inexistent' in %s on line %d
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>