X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/junit/sourceforge/phpeclipse/PHPParserTestCase.java b/net.sourceforge.phpeclipse/src/junit/sourceforge/phpeclipse/PHPParserTestCase.java index 0227343..9e6855d 100644 --- a/net.sourceforge.phpeclipse/src/junit/sourceforge/phpeclipse/PHPParserTestCase.java +++ b/net.sourceforge.phpeclipse/src/junit/sourceforge/phpeclipse/PHPParserTestCase.java @@ -7,18 +7,17 @@ which accompanies this distribution, and is available at http://www.eclipse.org/legal/cpl-v10.html **********************************************************************/ -import org.eclipse.core.runtime.CoreException; +import net.sourceforge.phpdt.internal.compiler.parser.Parser; +import org.eclipse.core.runtime.CoreException; import junit.framework.TestCase; -import net.sourceforge.phpeclipse.phpeditor.PHPParser; - /** * Tests the php parser */ public class PHPParserTestCase extends TestCase { - PHPParser parser; + Parser parser; public PHPParserTestCase(String name) { super(name); @@ -28,15 +27,35 @@ public class PHPParserTestCase extends TestCase { * Test the PHP Parser with different PHP snippets */ public void testPHPParser() { - checkHTML(""); - checkHTML(""); - checkHTML(""); - checkHTML(" foo "); - checkHTML(" "); - + // Bugs item #690938 + checkPHP( + "$ebus_sql['sel_url_list'] = <<>\n" + + "and appl_sect_deftn_sk = <>\n" + + "order by url_ord\n" + + "EOS;\n"); + + checkPHP("foreach ($HTTP_GET_VARS as $secvalue) { }"); + checkPHP("\"\\\"\";"); + checkPHP("\"\\[addsig]\""); + checkPHP("$v->read();"); + checkPHP("$add = 'a'.$i;$val = $$add;"); + checkPHP("($a==\"b\") || (c($this->x)==\"d\");"); + checkPHP("(substr($this->file, 0, 2) == \"MM\");"); + checkPHP("(substr($this->file, 0, 2) == \"MM\") || substr($this->file, 0, 2) == \"II\";"); + checkPHP("return (substr($this->file, 0, 2) == \"MM\") || substr($this->file, 0, 2) == \"II\";"); + checkPHP("$this->highlightfile->linkscripts{$category}"); + checkPHP("$code = call_user_method($this->highlightfile->linkscripts{$category}, $this->highlightfile, $oldword, $this->output_module)"); + checkPHP("$this->startmap[$startcurrtag]();"); + checkPHP("new $this->startmap[$startcurrtag]();"); + checkPHP("$this->highlightfile = new $this->startmap[$startcurrtag]();"); checkPHP("echo \"Test\", \"me\";"); checkPHP("print (\"Test me\");"); - checkPHP("$s = <<read();"); checkPHP("$alttext = ereg_replace(\"\\\"\", \"\", $alttext);"); checkPHP("$message .= \"\"._THISISAUTOMATED.\"\\n\\n\";"); checkPHP("if (!empty($pass) AND $pass==$passwd) { }"); @@ -94,24 +123,42 @@ public class PHPParserTestCase extends TestCase { checkPHP("do {$array[] = array(\"$myrow[uid]\" => \"$myrow[uname]\"); } while($myrow = mysql_fetch_array($result));"); checkPHP("$ol = new Overlib();"); checkPHP("$risultato = mysql_query($sql) or\n die(mysql_error());"); + + checkHTML("\n\n\n\n "); + checkHTML(""); + checkHTML(""); + checkHTML(" foo "); + checkHTML(" "); + checkHTML(""); } private void checkPHP(String strEval) { try { - parser.phpParse(strEval, 1); + if (Parser.DEBUG) { + System.out.println("\n------------------------------------"); + System.out.println(strEval); + } + parser.phpParserTester(strEval, 1); } catch (CoreException e) { } } private void checkHTML(String strEval) { - parser.htmlParse(strEval); + try { + if (Parser.DEBUG) { + System.out.println("\n------------------------------------"); + System.out.println(strEval); + } + parser.parse(strEval); + } catch (CoreException e) { + } } /** * The JUnit setup method */ protected void setUp() { - parser = new PHPParser(null); + parser = new Parser(null); } }