Annotation of embedaddon/php/ext/reflection/tests/ReflectionClass_isSubclassOf_basic.phpt, revision 1.1.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>