X-Git-Url: http://git.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 400365a..18adb89 100644 --- a/net.sourceforge.phpeclipse/src/junit/sourceforge/phpeclipse/PHPParserTestCase.java +++ b/net.sourceforge.phpeclipse/src/junit/sourceforge/phpeclipse/PHPParserTestCase.java @@ -7,11 +7,9 @@ which accompanies this distribution, and is available at http://www.eclipse.org/legal/cpl-v10.html **********************************************************************/ -import org.eclipse.core.runtime.CoreException; - -import junit.framework.TestCase; +import net.sourceforge.phpeclipse.phpeditor.phpparser.PHPParser; -import net.sourceforge.phpeclipse.phpeditor.PHPParser; +import org.eclipse.core.runtime.CoreException; /** * Tests the php parser @@ -28,8 +26,46 @@ public class PHPParserTestCase extends TestCase { * Test the PHP Parser with different PHP snippets */ public void testPHPParser() { + + checkHTML("\n\n\n\n "); checkHTML(""); + checkHTML(""); + checkHTML(" foo "); + checkHTML(" "); + 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 = <<blockvariables[$block][$varname]);"); + checkPHP("new IT_Error(\"The block '$block' was not found in the template.\", __FILE__, __LINE__);"); + checkPHP("for ($i=156, $j=0; $i<512; $i++, $j++) $v_checksum += ord(substr($v_binary_data_last,$j,1));"); + checkPHP("define('MAIL_MIME_CRLF', $crlf, true);"); + checkPHP("static $last_run = 0;"); + checkPHP("unset($headers['Subject']);"); + checkPHP("switch($func) {\n case \"f0\":\n case \"f1\":\n f1();\n break; \n case \"tt\": \n default: \n f0(); \n break;\n }"); + checkPHP("function validateAndParseResponse($code, &$arguments) { }"); + checkPHP("$options = Console_Getopt::getopt($argv, \"h?v:e:p:d:\");"); + checkPHP("$this->container = new $container_class($container_options);"); + checkPHP("class Cmd extends PEAR { var $arrSetting = array(); }"); + checkPHP("class Cmd extends PEAR { var $arrSetting = array(), $i=10; }"); checkPHP("if (isset($test)) { } elseif (isset($lang)) { }"); checkPHP("require_once(\"mainfile.php\"); "); checkPHP("if (eregi(\"footer.php\",$PHP_SELF)) {\n" + "Header(\"Location: index.php\");\n" + "die();\n" + "}\n"); @@ -71,13 +107,16 @@ public class PHPParserTestCase extends TestCase { private void checkPHP(String strEval) { try { - parser.phpParse(strEval, 1); + parser.phpParserTester(strEval, 1); } catch (CoreException e) { } } private void checkHTML(String strEval) { - parser.htmlParse(strEval); + try { + parser.parse(strEval); + } catch (CoreException e) { + } } /**