Zend tests
| From: | Zoe Slattery | Date: | Fri, 22 Jun 2007 07:58:26 +0000 |
| Subject: | Zend tests | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-30316@lists.php.net to get a copy of this message | ||
Hi
I started to look at the test coverage of the Zend engine this week. I tried to commit a couple of small tests (see PHP6 versions below) but looks like my CVS ID doesn't let me commit to Zend/tests.
Would it be possible to upgrade me so that I can commit tests to Zend/tests as well as ext/standard/tests?
The tests I wanted to add were to check when class constants get initialised, I think this behaviour changed recently in PHP5 (the second test used to have output 'string(10) "const in B"'). The current behaviour looks correct and I couldn't see a test that already covers this.
selfParent_001.phpt
==============
--TEST--
Test when constants are initialised. See also selfParent_002.phpt.
--FILE--
<?php
class A {
const myConst = "const in A";
const myDynConst = self::myConst;
public static function test() {
var_dump(self::myDynConst);
}
}
class B extends A {
const myConst = "const in B";
public static function test() {
var_dump(parent::myDynConst);
}
}
A::test();
B::test();
?>
--EXPECT--
string(10) "const in A"
string(10) "const in A"
--UEXPECT--
unicode(10) "const in A"
unicode(10) "const in A"
selfParent_002.phpt
==============
--TEST--
Test when constants are initialised. See also selfParent_001.phpt.
--FILE--
<?php
class A {
const myConst = "const in A";
const myDynConst = self::myConst;
public static function test() {
var_dump(self::myDynConst);
}
}
class B extends A {
const myConst = "const in B";
public static function test() {
var_dump(parent::myDynConst);
}
}
B::test();
A::test();
?>
--EXPECT--
string(10) "const in A"
string(10) "const in A"
--UEXPECT--
unicode(10) "const in A"
unicode(10) "const in A"
Zoe Slattery
IBM