Annotation of embedaddon/php/ext/reflection/tests/bug39067.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Bug #39067 (getDeclaringClass() and private properties)
                      3: --FILE--
                      4: <?php
                      5: 
                      6: class A {
                      7:        private $x;
                      8: }
                      9: 
                     10: class B extends A {
                     11:        private $x;
                     12: }
                     13: 
                     14: class C extends B {
                     15:        private $x;
                     16: }
                     17: 
                     18: $rc = new ReflectionClass('C');
                     19: var_dump($rc->getProperty('x')->getDeclaringClass()->getName());
                     20: 
                     21: $rc = new ReflectionClass('B');
                     22: var_dump($rc->getProperty('x')->getDeclaringClass()->getName());
                     23: 
                     24: $rc = new ReflectionClass('A');
                     25: var_dump($rc->getProperty('x')->getDeclaringClass()->getName());
                     26: 
                     27: class Test {
                     28:        private $x;
                     29: }
                     30: 
                     31: class Test2 extends Test {
                     32:        public $x;
                     33: }
                     34: 
                     35: $rc = new ReflectionClass('Test2');
                     36: var_dump($rc->getProperty('x')->getDeclaringClass()->getName());
                     37: 
                     38: echo "Done\n";
                     39: ?>
                     40: --EXPECTF--    
                     41: string(1) "C"
                     42: string(1) "B"
                     43: string(1) "A"
                     44: string(5) "Test2"
                     45: Done

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