diff options
Diffstat (limited to 'tests/classes/inheritance_005.phpt')
-rw-r--r-- | tests/classes/inheritance_005.phpt | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/tests/classes/inheritance_005.phpt b/tests/classes/inheritance_005.phpt new file mode 100644 index 0000000..8990264 --- /dev/null +++ b/tests/classes/inheritance_005.phpt @@ -0,0 +1,57 @@ +--TEST-- +Check for inherited old-style constructor. +--FILE-- +<?php + class A + { + function A() + { + echo "In " . __METHOD__ . "\n"; + } + } + + class B extends A + { + } + + class C extends B + { + } + + + echo "About to construct new B: \n"; + $b = new B; + + echo "Is B::B() callable?\n"; + var_dump(is_callable(array($b, "B"))); + + echo "Is B::A() callable?\n"; + var_dump(is_callable(array($b, "A"))); + + echo "About to construct new C: \n"; + $c = new C; + + echo "Is C::A() callable?\n"; + var_dump(is_callable(array($c, "A"))); + + echo "Is C::B() callable?\n"; + var_dump(is_callable(array($c, "B"))); + + echo "Is C::C() callable?\n"; + var_dump(is_callable(array($c, "C"))); +?> +--EXPECTF-- +About to construct new B: +In A::A +Is B::B() callable? +bool(false) +Is B::A() callable? +bool(true) +About to construct new C: +In A::A +Is C::A() callable? +bool(true) +Is C::B() callable? +bool(false) +Is C::C() callable? +bool(false) |