From: Pierre Joye Date: Tue, 2 Mar 2004 16:00:49 +0000 (+0000) Subject: - initial test for #27439, covers more cases we got during X-Git-Tag: RELEASE_0_2_0~80 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2fba0d7b7a9cddd1423ad83083fbd25d1b1704f3;p=php - initial test for #27439, covers more cases we got during foreach($this->foo as $bar) bug --- diff --git a/tests/lang/bug27439.phpt b/tests/lang/bug27439.phpt new file mode 100755 index 0000000000..cbcc2c3ffd --- /dev/null +++ b/tests/lang/bug27439.phpt @@ -0,0 +1,74 @@ +--TEST-- +bug27439: foreach() with $this +--FILE-- +object = new test_props; + } + + public function getArray() { + return $this->array; + } + + public function getString() { + return $this->string; + } + + public function case1() { + foreach ($this->array as $foo) { + echo $foo; + } + } + + public function case2() { + foreach ($this->foobar as $foo); + } + + public function case3() { + foreach ($this->string as $foo); + } + + public function case4() { + foreach ($this->getArray() as $foo); + } + + public function case5() { + foreach ($this->getString() as $foo); + } + + public function case6() { + foreach ($this->object as $foo) { + echo $foo; + } + } +} +$test = new test(); +$test->case1(); +$test->case2(); +$test->case3(); +$test->case4(); +$test->case5(); +$test->case6(); +echo "\n"; +echo "===DONE==="; +?> +--EXPECTF-- +123 +Warning: Invalid argument supplied for foreach() in %s on line %d + +Warning: Invalid argument supplied for foreach() in %s on line %d + +Warning: Invalid argument supplied for foreach() in %s on line %d +123 +===DONE===