Annotation of embedaddon/php/ext/reflection/tests/ReflectionClass_isSubclassOf_basic.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: ReflectionClass::isSubclassOf()
! 3: --FILE--
! 4: <?php
! 5: class A {}
! 6: class B extends A {}
! 7: class C extends B {}
! 8:
! 9: interface I {}
! 10: class X implements I {}
! 11:
! 12: $classNames = array('A', 'B', 'C', 'I', 'X');
! 13:
! 14: foreach ($classNames as $className) {
! 15: $rcs[$className] = new ReflectionClass($className);
! 16: }
! 17:
! 18: foreach ($rcs as $childName => $child) {
! 19: foreach ($rcs as $parentName => $parent) {
! 20: echo "Is " . $childName . " a subclass of " . $parentName . "? \n";
! 21: echo " - Using object argument: ";
! 22: var_dump($child->isSubclassOf($parent));
! 23: echo " - Using string argument: ";
! 24: var_dump($child->isSubclassOf($parentName));
! 25: }
! 26: }
! 27: ?>
! 28: --EXPECTF--
! 29: Is A a subclass of A?
! 30: - Using object argument: bool(false)
! 31: - Using string argument: bool(false)
! 32: Is A a subclass of B?
! 33: - Using object argument: bool(false)
! 34: - Using string argument: bool(false)
! 35: Is A a subclass of C?
! 36: - Using object argument: bool(false)
! 37: - Using string argument: bool(false)
! 38: Is A a subclass of I?
! 39: - Using object argument: bool(false)
! 40: - Using string argument: bool(false)
! 41: Is A a subclass of X?
! 42: - Using object argument: bool(false)
! 43: - Using string argument: bool(false)
! 44: Is B a subclass of A?
! 45: - Using object argument: bool(true)
! 46: - Using string argument: bool(true)
! 47: Is B a subclass of B?
! 48: - Using object argument: bool(false)
! 49: - Using string argument: bool(false)
! 50: Is B a subclass of C?
! 51: - Using object argument: bool(false)
! 52: - Using string argument: bool(false)
! 53: Is B a subclass of I?
! 54: - Using object argument: bool(false)
! 55: - Using string argument: bool(false)
! 56: Is B a subclass of X?
! 57: - Using object argument: bool(false)
! 58: - Using string argument: bool(false)
! 59: Is C a subclass of A?
! 60: - Using object argument: bool(true)
! 61: - Using string argument: bool(true)
! 62: Is C a subclass of B?
! 63: - Using object argument: bool(true)
! 64: - Using string argument: bool(true)
! 65: Is C a subclass of C?
! 66: - Using object argument: bool(false)
! 67: - Using string argument: bool(false)
! 68: Is C a subclass of I?
! 69: - Using object argument: bool(false)
! 70: - Using string argument: bool(false)
! 71: Is C a subclass of X?
! 72: - Using object argument: bool(false)
! 73: - Using string argument: bool(false)
! 74: Is I a subclass of A?
! 75: - Using object argument: bool(false)
! 76: - Using string argument: bool(false)
! 77: Is I a subclass of B?
! 78: - Using object argument: bool(false)
! 79: - Using string argument: bool(false)
! 80: Is I a subclass of C?
! 81: - Using object argument: bool(false)
! 82: - Using string argument: bool(false)
! 83: Is I a subclass of I?
! 84: - Using object argument: bool(false)
! 85: - Using string argument: bool(false)
! 86: Is I a subclass of X?
! 87: - Using object argument: bool(false)
! 88: - Using string argument: bool(false)
! 89: Is X a subclass of A?
! 90: - Using object argument: bool(false)
! 91: - Using string argument: bool(false)
! 92: Is X a subclass of B?
! 93: - Using object argument: bool(false)
! 94: - Using string argument: bool(false)
! 95: Is X a subclass of C?
! 96: - Using object argument: bool(false)
! 97: - Using string argument: bool(false)
! 98: Is X a subclass of I?
! 99: - Using object argument: bool(true)
! 100: - Using string argument: bool(true)
! 101: Is X a subclass of X?
! 102: - Using object argument: bool(false)
! 103: - Using string argument: bool(false)
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>