diff options
author | Tomas V.V.Cox <cox@php.net> | 2002-01-11 00:04:55 +0000 |
---|---|---|
committer | Tomas V.V.Cox <cox@php.net> | 2002-01-11 00:04:55 +0000 |
commit | 3a878be7a1e66ae4024d837f935b7ca8baf928a3 (patch) | |
tree | 5606a4849bf235ada37a270f6e50230d4a75368e | |
parent | d454f8bb3a25e80ad3944f9a533692a3dc9aa615 (diff) | |
download | php-git-3a878be7a1e66ae4024d837f935b7ca8baf928a3.tar.gz |
submit a test that will fail due to php bug #14744
-rw-r--r-- | pear/tests/pear1.phpt | 41 |
1 files changed, 35 insertions, 6 deletions
diff --git a/pear/tests/pear1.phpt b/pear/tests/pear1.phpt index 07b737f5bc..067c7165fe 100644 --- a/pear/tests/pear1.phpt +++ b/pear/tests/pear1.phpt @@ -8,26 +8,43 @@ require_once "PEAR.php"; class TestPEAR extends PEAR { function TestPEAR($name) { - $this->_debug = true; - $this->name = $name; - $this->PEAR(); + $this->_debug = true; + $this->name = $name; + $this->PEAR(); } function _TestPEAR() { - print "This is the TestPEAR($this->name) destructor\n"; - $this->_PEAR(); + print "This is the TestPEAR($this->name) destructor\n"; + $this->_PEAR(); } } class Test2 extends PEAR { function _Test2() { print "This is the Test2 destructor\n"; - $this->_PEAR(); + $this->_PEAR(); } } class Test3 extends Test2 { } +// test for bug http://bugs.php.net/bug.php?id=14744 +class Other extends Pear { + + var $a = 'default value'; + + function Other() { + $this->PEAR(); + } + + function _Other() { + // $a was modified but here misteriously returns to be + // the original value. That makes the destructor useless + // The correct value for $a in the destructor shoud be "new value" + echo "#bug 14744# Other class destructor: other->a == '" . $this->a ."'\n"; + } +} + print "testing plain destructors\n"; $o = new TestPEAR("test1"); $p = new TestPEAR("test2"); @@ -35,6 +52,13 @@ print "..\n"; print "testing inherited destructors\n"; $q = new Test3; +echo "...\ntesting bug #14744\n"; +$other = new Other; +echo "#bug 14744# Other class constructor: other->a == '" . $other->a ."'\n"; +// Modify $a +$other->a = 'new value'; +echo "#bug 14744# Other class modified: other->a == '" . $other->a ."'\n"; + print "..\n"; print "script exiting...\n"; print "..\n"; @@ -48,6 +72,10 @@ PEAR constructor called, class=testpear PEAR constructor called, class=testpear .. testing inherited destructors +... +testing bug #14744 +#bug 14744# Other class constructor: other->a == 'default value' +#bug 14744# Other class modified: other->a == 'new value' .. script exiting... .. @@ -56,3 +84,4 @@ PEAR destructor called, class=testpear This is the TestPEAR(test2) destructor PEAR destructor called, class=testpear This is the Test2 destructor +#bug 14744# Other class destructor: other->a == 'new value' |