From: Dmitry Stogov Date: Thu, 20 Oct 2005 07:04:25 +0000 (+0000) Subject: Added forgotten tests X-Git-Tag: php-5.1.0RC4~67 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9269f5847784091c1174b576da998cf55027f3cf;p=php Added forgotten tests --- diff --git a/Zend/tests/bug33512.phpt b/Zend/tests/bug33512.phpt new file mode 100755 index 0000000000..9dd4e4e5f9 --- /dev/null +++ b/Zend/tests/bug33512.phpt @@ -0,0 +1,66 @@ +--TEST-- +Bug #33512 (unset() overloaded properties doesn't work) +--FILE-- +Var[$var] = $val; + } + function __get($var) { + if(isset($this->Var[$var])) return $this->Var[$var]; + else return -1; + } + function __unset($var) { + unset($this->Var[$var]); + } + } + + $SomeObj = new TheObj; + + // this will fine + $SomeObj->RealVar1 = 'somevalue'; + $SomeObj->{'RealVar2'} = 'othervalue'; + $SomeObj->{'RealVar'.(3)} = 'othervaluetoo'; + $SomeObj->{'RealVar'.'4'} = 'anothervalue'; + + // this will fine too + $SomeObj->Virtual1 = 'somevalue'; + $SomeObj->{'Virtual2'} = 'othervalue'; + + // it's can't be used since this will encounter error + $SomeObj->{'Virtual'.(3)} = 'othervaluetoo'; + $SomeObj->{'Virtual'.'4'} = 'anothervalue'; + + // but this will fine, ofcourse + $SomeObj->Var['Virtual'.(3)] = 'othervaluetoo'; + $SomeObj->Var['Virtual'.'4'] = 'anothervalue'; + + + var_dump($SomeObj->RealVar1); + print $SomeObj->{'RealVar'.(3)}."\n"; + + unset($SomeObj->RealVar1); + unset($SomeObj->{'RealVar'.(3)}); + + //the lines below will catch by '__get' magic method since these variables are unavailable anymore + var_dump($SomeObj->RealVar1); + print $SomeObj->{'RealVar'.(3)}."\n"; + + // now we will try to unset these variables + unset($SomeObj->Virtual1); + unset($SomeObj->{'Virtual'.(3)}); + + //but, these variables are still available??? eventhough they're "unset"-ed + print $SomeObj->Virtual1."\n"; + print $SomeObj->{'Virtual'.(3)}."\n"; +?> +--EXPECT-- +string(9) "somevalue" +othervaluetoo +int(-1) +-1 +-1 +-1 diff --git a/Zend/tests/bug34062.phpt b/Zend/tests/bug34062.phpt new file mode 100755 index 0000000000..bcb4ad8c64 --- /dev/null +++ b/Zend/tests/bug34062.phpt @@ -0,0 +1,24 @@ +--TEST-- +Bug #34062 (Crash in catch block when many arguments are used) +--FILE-- + +--EXPECT-- +((( +here +))) +