X-Git-Url: http://secure.phpeclipse.com
diff --git a/net.sourceforge.phpeclipse.tests/src/net/sourceforge/phpeclipse/tests/parser/PHPManualTestCase.java b/net.sourceforge.phpeclipse.tests/src/net/sourceforge/phpeclipse/tests/parser/PHPManualTestCase.java
index b460407..6ab02e7 100644
--- a/net.sourceforge.phpeclipse.tests/src/net/sourceforge/phpeclipse/tests/parser/PHPManualTestCase.java
+++ b/net.sourceforge.phpeclipse.tests/src/net/sourceforge/phpeclipse/tests/parser/PHPManualTestCase.java
@@ -28,6 +28,16 @@ public class PHPManualTestCase extends TestCase {
* Test the PHP Parser with different PHP snippets
*/
public void testPHPParser() {
+ checkPHP("function foo()" +
"{" +
" echo \"In foo()
\\n\";" +
"}" +
"" +
"function bar($arg = '')" +
"{" +
" echo \"In bar(); argument was '$arg'.
\\n\";" +
"}" +
"" +
"// This is a wrapper function around echo" +
"function echoit($string)" +
"{" +
" echo $string;" +
"}" +
"" +
"$func = 'foo';" +
"$func(); // This calls foo()" +
"" +
"$func = 'bar';" +
"$func('test'); // This calls bar()" +
"" +
"$func = 'echoit';" +
"$func('test'); // This calls echoit()" +
"");
+ checkPHP("class Foo" +
"{" +
" function Vari()" +
" {" +
" $name = 'Bar';" +
" $this->$name(); // This calls the Bar() method\n" +
" }" +
" " +
" function Bar()" +
" {" +
" echo \"This is Bar\";" +
" }" +
"}" +
"" +
"$foo = new Foo();" +
"$funcname = \"Var\";" +
"$foo->$varname(); // This calls $foo->Var()\n" +
"");
+ checkPHP("function square ($num)" +
"{" +
" return $num * $num;" +
"}" +
"echo square (4); // outputs '16'." +
"");
+ checkPHP("function small_numbers()" +
"{" +
" return array (0, 1, 2);" +
"}" +
"list ($zero, $one, $two) = small_numbers();" +
"");
+ checkPHP("function &returns_reference()" +
"{" +
" return $someref;" +
"}" +
"" +
"$newref =& returns_reference();" +
" " +
"");
+ checkPHP("function add_some_extra(&$string)" +
"{" +
" $string .= 'and something extra.';" +
"}" +
"$str = 'This is a string, ';" +
"add_some_extra($str);" +
"echo $str; ");
+ checkPHP("function makecoffee ($type = \"cappuccino\")\n" +
"{\n" +
" return \"Making a cup of $type.\\n\";\n" +
"}" +
"echo makecoffee ();" +
"echo makecoffee (\"espresso\");" +
"");
+ checkPHP("$makefoo = true;" +
"" +
"/* We can't call foo() from here " +
" since it doesn't exist yet," +
" but we can call bar() */" +
"" +
"bar();" +
"" +
"if ($makefoo) {" +
" function foo ()" +
" {" +
" echo \"I don't exist until program execution reaches me.\\n\";" +
" }" +
"}" +
"" +
"/* Now we can safely call foo()" +
" since $makefoo evaluated to true */" +
"" +
"if ($makefoo) foo();" +
"" +
"function bar() " +
"{" +
" echo \"I exist immediately upon program start.\\n\";" +
"}" +
"" +
"");
+ checkPHP(
+ "function foo() " +
"{" +
" function bar() " +
" {" +
" echo \"I don't exist until foo() is called.\\n\";" +
" }" +
"}" +
"" +
"/* We can't call bar() yet" +
" since it doesn't exist. */" +
"" +
"foo();\n" +
"" +
"/* Now we can call bar()," +
" foo()'s processesing has" +
" made it accessable. */" +
"" +
"bar();" +
"");
// Bugs item #690938
checkPHP(
" echo \"This is a test\"; // This is a one-line c++ style comment\n"