Annotation of embedaddon/php/tests/classes/__call_004.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: When __call() is invoked via ::, ensure current scope's __call() is favoured over the specified class's  __call().
                      3: --FILE--
                      4: <?php
                      5: class A {
                      6:        function __call($strMethod, $arrArgs) {
                      7:                echo "In " . __METHOD__ . "($strMethod, array(" . implode(',',$arrArgs) . "))\n";
                      8:                var_dump($this);
                      9:        }
                     10: }
                     11: 
                     12: class B extends A {
                     13:        function __call($strMethod, $arrArgs) {
                     14:                echo "In " . __METHOD__ . "($strMethod, array(" . implode(',',$arrArgs) . "))\n";
                     15:                var_dump($this);
                     16:        }
                     17:        
                     18:        function test() {
                     19:                A::test1(1,'a');
                     20:                B::test2(1,'a');
                     21:                self::test3(1,'a');
                     22:                parent::test4(1,'a');
                     23:        }
                     24: }
                     25: 
                     26: $b = new B();
                     27: $b->test();
                     28: ?>
                     29: --EXPECTF--
                     30: In B::__call(test1, array(1,a))
                     31: object(B)#1 (0) {
                     32: }
                     33: In B::__call(test2, array(1,a))
                     34: object(B)#1 (0) {
                     35: }
                     36: In B::__call(test3, array(1,a))
                     37: object(B)#1 (0) {
                     38: }
                     39: In B::__call(test4, array(1,a))
                     40: object(B)#1 (0) {
                     41: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>