X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse.test/src/net/sourceforge/phpeclipse/phpeditor/php/test/DualParseSyntaxErrorTest.java b/net.sourceforge.phpeclipse.test/src/net/sourceforge/phpeclipse/phpeditor/php/test/DualParseSyntaxErrorTest.java new file mode 100644 index 0000000..15b4590 --- /dev/null +++ b/net.sourceforge.phpeclipse.test/src/net/sourceforge/phpeclipse/phpeditor/php/test/DualParseSyntaxErrorTest.java @@ -0,0 +1,116 @@ +/* + * Created on 29.02.2004 + * + * To change the template for this generated file go to + * Window - Preferences - Java - Code Generation - Code and Comments + */ +package net.sourceforge.phpeclipse.phpeditor.php.test; + +import net.sourceforge.phpdt.core.tests.util.AbstractCompilerTest; + +public class DualParseSyntaxErrorTest extends AbstractCompilerTest { + public static boolean optimizeStringLiterals = false; + + public DualParseSyntaxErrorTest(String testName) { + super(testName); + } + + public void test01() { + String s = "$login =1; " + "final class test {\n" + "\n" + + "private function f1() {\n" + "\n" + "}\n" + + "public function f2() {\n" + "\n" + " \n" + "} \n" + "}"; + + String expectedSyntaxErrorDiagnosis = ""; + + String testName = ""; + checkParsePHP(s.toCharArray(), expectedSyntaxErrorDiagnosis); + // testName); + } + + public void test02() { + String s = "class test { \n" + " function f0() \n" + + " { \n" + " } \n" + + "} \n"; + + String expectedSyntaxErrorDiagnosis = ""; + + String testName = ""; + checkParsePHP(s.toCharArray(), expectedSyntaxErrorDiagnosis); + // testName); + } + + public void test03() { + String s = "$chars = ( isset($HTTP_GET_VARS['chars']) ) ? intval($HTTP_GET_VARS['chars']) : 200;"; + String expectedSyntaxErrorDiagnosis = ""; + + checkParsePHP(s.toCharArray(), expectedSyntaxErrorDiagnosis); + // testName); + } + + public void test96() { + String s = "$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"; + String expectedSyntaxErrorDiagnosis = ""; + + checkParsePHP(s.toCharArray(), expectedSyntaxErrorDiagnosis); + // testName); + } + + public void test97() { + String s = "class momo { \n" + + " function &fetchRow($result, $fetchmode = DB_FETCHMODE_DEFAULT, $rownum=null) \n" + + " { \n" + " } \n" + + "} \n"; + + String expectedSyntaxErrorDiagnosis = ""; + + checkParsePHP(s.toCharArray(), expectedSyntaxErrorDiagnosis); + // testName); + } + + public void test98() { + String s = "return(array());" + + "if(!$result = mysql_query($sql)) return(array());\n"; + + String expectedSyntaxErrorDiagnosis = ""; + + checkParsePHP(s.toCharArray(), expectedSyntaxErrorDiagnosis); + // testName); + } + + public void test99() { + String s = "class test { \n" + + " murks; \n" + + " function &fetchRow($result, $fetchmode = DB_FETCHMODE_DEFAULT, $rownum=null) \n" + + " { \n" + " } \n" + + "} \n"; + + String expectedSyntaxErrorDiagnosis = "----------\n" + + "1. ERROR in (at line 1)\n" + + " murks; \n" + + " ^^^^^^\n" + + "Parser error \"\'public\' \'private\' or \'protected\' modifier expected for field declarations.\"\n" + + "----------\n" + // + "2. ERROR in (at line 1)\n" + // + " } \n" + // + " ^\n" + // + "Parser error \"Too many closing \'}\'; end-of-file not + // reached.\"\n" + // + "----------\n" + ; + + checkParsePHP(s.toCharArray(), expectedSyntaxErrorDiagnosis); + // testName); + } +}