X-Git-Url: http://git.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 56d3697..5d2c0b7 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 @@ -1,18 +1,17 @@ package net.sourceforge.phpeclipse.tests.parser; /******************************************************************************* - * Copyright (c) 2002 Klaus Hartlage - www.eclipseproject.de All rights + * Copyright (c) 2002 www.phpeclipse.de All rights * reserved. This program and the accompanying materials are made available * under the terms of the Common Public License v1.0 which accompanies this * distribution, and is available at http://www.eclipse.org/legal/cpl-v10.html ******************************************************************************/ -import junit.framework.TestCase; -import net.sourceforge.phpdt.internal.compiler.parser.Parser; +import net.sourceforge.phpdt.core.tests.util.AbstractCompilerTest; import net.sourceforge.phpdt.internal.compiler.parser.Scanner; /** * Tests the php parser */ -public class PHPManualTestCase extends TestCase { - Parser parser; +public class PHPManualTestCase extends AbstractCompilerTest { +// Parser parser; public PHPManualTestCase(String name) { super(name); } @@ -20,6 +19,18 @@ public class PHPManualTestCase extends TestCase { * Test the PHP Parser with different PHP snippets */ public void testPHPParser() { + checkPHP("self::$instance = new Singleton();"); + checkPHP("if ((eregi(\"<[^>]*script*\\\"?[^>]*>\", $secvalue)) ||\r\n" + + " (eregi(\"<[^>]*object*\\\"?[^>]*>\", $secvalue)) ||\r\n" + + " (eregi(\"<[^>]*iframe*\\\"?[^>]*>\", $secvalue)) ||\r\n" + + " (eregi(\"<[^>]*applet*\\\"?[^>]*>\", $secvalue)) ||\r\n" + + " (eregi(\"<[^>]*meta*\\\"?[^>]*>\", $secvalue)) ||\r\n" + + " (eregi(\"<[^>]*style*\\\"?[^>]*>\", $secvalue)) ||\r\n" + + " (eregi(\"<[^>]*form*\\\"?[^>]*>\", $secvalue)) ||\r\n" + + " (eregi(\"\\([^>]*\\\"?[^)]*\\)\", $secvalue)) ||\r\n" + + " (eregi(\"\\\"\", $secvalue))) {\r\n" + + " die (\"


The html tags you attempted to use are not allowed

[ Go Back ]\");\r\n" + + " }"); checkPHP("function foo()" + "{" + " echo \"In foo()
\\n\";" + "}" + "" + "function bar($arg = '')" + "{" + " echo \"In bar(); argument was '$arg'.
\\n\";" + "}" + "" @@ -87,8 +98,8 @@ public class PHPManualTestCase extends TestCase { + " echo \"
\\n\";\n" + "}\n" + "\n" + "// ...because you can simply type\n" + "if ($show_separators) {\n" + " echo \"
\\n\";\n" + "}"); - checkPHP("echo gettype((bool) \"\"); // bool(false)\n" - + "echo gettype((bool) 1); // bool(true)\n" + checkPHP( // "echo gettype((bool) \"\"); // bool(false)\n" + "echo gettype((bool) 1); // bool(true)\n" + "echo gettype((bool) -2); // bool(true)\n" + "echo gettype((bool) \"foo\"); // bool(true)\n" + "echo gettype((bool) 2.3e5); // bool(true)\n" @@ -124,17 +135,7 @@ public class PHPManualTestCase extends TestCase { + "echo 'This will not expand: \\n a newline';\n" + "\n" + "// Outputs: Variables do not $expand $either\n" + "echo 'Variables do not $expand $either';\n"); - checkPHP("$str = <<foo = 'Foo';\n" - + " $this->bar = array('Bar1', 'Bar2', 'Bar3');\n" + " }\n" - + "}\n" + "\n" + "$foo = new foo();\n" + "$name = 'MyName';\n" + "\n" - + "echo <<foo.\n" - + "Now, I am printing some {$foo->bar[1]}.\n" - + "This should print a capital 'A': \\x41\n" + "EOT;\n"); + checkPHP("echo \"This works: \" . $arr['foo'][3];"); checkPHP("echo \"\\$foo==$foo; type is \" . gettype ($foo) . \"
\\n\";"); checkPHP("$arr = array(\"foo\" => \"bar\", 12 => true);\n" + "\n" @@ -204,11 +205,11 @@ public class PHPManualTestCase extends TestCase { + "echo $obj->scalar; // outputs 'ciao'"); checkPHP("$var = NULL;"); checkPHP("$var = \"Bob\";\n" + "$Var = \"Joe\";\n" - + "echo \"$var, $Var\"; // outputs \"Bob, Joe\"\n" + "\n" + + + "echo \"$var, $Var\"; // outputs \"Bob, Joe\"\n" + "\n" + // "$4site = 'not yet'; // invalid; starts with a number\n" + "$_4site = 'not yet'; // valid; starts with an underscore\n" + "$täyte = 'mansikka'; \n"); - checkPHP(""); + checkPHP(""); checkPHP(""); } @@ -217,19 +218,22 @@ public class PHPManualTestCase extends TestCase { System.out.println("\n------------------------------------"); System.out.println(strEval); } - parser.phpParserTester(strEval, 1); - } - private void checkHTML(String strEval) { - if (Scanner.DEBUG) { - System.out.println("\n------------------------------------"); - System.out.println(strEval); - } - parser.parse(strEval); + checkParsePHP( + strEval.toCharArray(), + ""); +// parser.phpParserTester(strEval, 1); } +// private void checkHTML(String strEval) { +// if (Scanner.DEBUG) { +// System.out.println("\n------------------------------------"); +// System.out.println(strEval); +// } +// parser.parse(strEval); +// } /** * The JUnit setup method */ - protected void setUp() { - parser = new Parser(null); - } +// protected void setUp() { +// parser = new Parser(null); +// } }