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

1.1       misho       1: --TEST--
                      2: ReflectionClass::isInstance()
                      3: --FILE--
                      4: <?php
                      5: class A {}
                      6: class B extends A {}
                      7: 
                      8: interface I {}
                      9: class C implements I {}
                     10: 
                     11: class X {}
                     12: 
                     13: $classes = array("A", "B", "C", "I", "X");
                     14: 
                     15: $instances = array(    "myA" => new A,
                     16:                                        "myB" => new B,
                     17:                                        "myC" => new C,
                     18:                                        "myX" => new X );
                     19: 
                     20: foreach ($classes as $class) {
                     21:        $rc = new ReflectionClass($class);
                     22: 
                     23:        foreach ($instances as $name => $instance) {
                     24:                echo "is $name a $class? ";
                     25:                var_dump($rc->isInstance($instance));   
                     26:        }
                     27: 
                     28: }
                     29: 
                     30: ?>
                     31: --EXPECTF--
                     32: is myA a A? bool(true)
                     33: is myB a A? bool(true)
                     34: is myC a A? bool(false)
                     35: is myX a A? bool(false)
                     36: is myA a B? bool(false)
                     37: is myB a B? bool(true)
                     38: is myC a B? bool(false)
                     39: is myX a B? bool(false)
                     40: is myA a C? bool(false)
                     41: is myB a C? bool(false)
                     42: is myC a C? bool(true)
                     43: is myX a C? bool(false)
                     44: is myA a I? bool(false)
                     45: is myB a I? bool(false)
                     46: is myC a I? bool(true)
                     47: is myX a I? bool(false)
                     48: is myA a X? bool(false)
                     49: is myB a X? bool(false)
                     50: is myC a X? bool(false)
                     51: is myX a X? bool(true)

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