| /******************************************************************************* |
| * Copyright (c) 2000, 2005 IBM Corporation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * IBM Corporation - initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.jdt.core.tests.compiler.parser; |
| |
| |
| import java.util.Map; |
| |
| import junit.framework.Test; |
| |
| import org.eclipse.jdt.internal.compiler.impl.CompilerOptions; |
| |
| |
| |
| public class EnumCompletionParserTest extends AbstractCompletionTest { |
| public EnumCompletionParserTest(String testName) { |
| super(testName); |
| } |
| public static Test suite() { |
| return buildTestSuite(EnumCompletionParserTest.class); |
| } |
| |
| protected Map getCompilerOptions() { |
| Map options = super.getCompilerOptions(); |
| options.put(CompilerOptions.OPTION_Compliance, CompilerOptions.VERSION_1_5); |
| options.put(CompilerOptions.OPTION_Source, CompilerOptions.VERSION_1_5); |
| options.put(CompilerOptions.OPTION_TargetPlatform, CompilerOptions.VERSION_1_5); |
| return options; |
| } |
| |
| /* |
| * https://bugs.eclipse.org/bugs/show_bug.cgi?id=83321 |
| */ |
| public void test0001(){ |
| String str = |
| "public class Completion {\n" + |
| " /*here*/\n" + |
| "}\n" + |
| "enum Natural {\n" + |
| " ONE;\n" + |
| "}\n"; |
| |
| String completeBehind = "/*here*/"; |
| int cursorLocation = str.indexOf("/*here*/") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<CompleteOnType:>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = ""; |
| String expectedReplacedSource = ""; |
| String expectedUnitDisplayString = |
| "public class Completion {\n" + |
| " <CompleteOnType:>;\n" + |
| " public Completion() {\n" + |
| " }\n" + |
| "}\n" + |
| "enum Natural {\n" + |
| " ONE(),\n" + |
| " Natural() {\n" + |
| " }\n" + |
| " <clinit>() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| } |
| //https://bugs.eclipse.org/bugs/show_bug.cgi?id=84554 |
| public void test0002(){ |
| String str = |
| "public class Test {\n" + |
| " void foo() {\n" + |
| " switch(c) {\n" + |
| " case FOO :\n" + |
| " break;\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| String completeBehind = "FOO"; |
| int cursorLocation = str.indexOf("FOO") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<NONE>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "<NONE>"; |
| String expectedReplacedSource = "<NONE>"; |
| String expectedUnitDisplayString = |
| "public class Test {\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| |
| expectedCompletionNodeToString = "<CompleteOnName:FOO>"; |
| expectedParentNodeToString = |
| "switch (c) {\n" + |
| "case <CompleteOnName:FOO> : ;\n" + |
| "}"; |
| completionIdentifier = "FOO"; |
| expectedReplacedSource = "FOO"; |
| expectedUnitDisplayString = |
| "public class Test {\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " {\n" + |
| " switch (c) {\n" + |
| " case <CompleteOnName:FOO> : ;\n" + |
| " }\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkMethodParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "full ast"); |
| } |
| //https://bugs.eclipse.org/bugs/show_bug.cgi?id=84554 |
| public void test0003(){ |
| String str = |
| "public class Test {\n" + |
| " void foo() {\n" + |
| " switch(c) {\n" + |
| " case BAR :\n" + |
| " case FOO :\n" + |
| " break;\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| String completeBehind = "FOO"; |
| int cursorLocation = str.indexOf("FOO") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<NONE>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "<NONE>"; |
| String expectedReplacedSource = "<NONE>"; |
| String expectedUnitDisplayString = |
| "public class Test {\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| |
| expectedCompletionNodeToString = "<CompleteOnName:FOO>"; |
| expectedParentNodeToString = |
| "switch (c) {\n" + |
| "case BAR : ;\n" + |
| "case <CompleteOnName:FOO> : ;\n" + |
| "}"; |
| completionIdentifier = "FOO"; |
| expectedReplacedSource = "FOO"; |
| expectedUnitDisplayString = |
| "public class Test {\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " {\n" + |
| " switch (c) {\n" + |
| " case BAR : ;\n" + |
| " case <CompleteOnName:FOO> : ;\n" + |
| " }\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkMethodParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "full ast"); |
| } |
| //https://bugs.eclipse.org/bugs/show_bug.cgi?id=84554 |
| public void test0004(){ |
| String str = |
| "public class Test {\n" + |
| " void foo() {\n" + |
| " switch(c) {\n" + |
| " case BAR :\n" + |
| " break;\n" + |
| " case FOO :\n" + |
| " break;\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| String completeBehind = "FOO"; |
| int cursorLocation = str.indexOf("FOO") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<NONE>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "<NONE>"; |
| String expectedReplacedSource = "<NONE>"; |
| String expectedUnitDisplayString = |
| "public class Test {\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| |
| expectedCompletionNodeToString = "<CompleteOnName:FOO>"; |
| expectedParentNodeToString = |
| "switch (c) {\n" + |
| "case BAR : ;\n" + |
| " break ;\n" + |
| "case <CompleteOnName:FOO> : ;\n" + |
| "}"; |
| completionIdentifier = "FOO"; |
| expectedReplacedSource = "FOO"; |
| expectedUnitDisplayString = |
| "public class Test {\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " {\n" + |
| " switch (c) {\n" + |
| " case BAR : ;\n" + |
| " break ;\n" + |
| " case <CompleteOnName:FOO> : ;\n" + |
| " }\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkMethodParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "full ast"); |
| } |
| //https://bugs.eclipse.org/bugs/show_bug.cgi?id=84554 |
| public void test0005(){ |
| String str = |
| "public class Test {\n" + |
| " void foo() {\n" + |
| " switch(c) {\n" + |
| " case BAR :\n" + |
| " break;\n" + |
| " case FOO :\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| String completeBehind = "FOO"; |
| int cursorLocation = str.indexOf("FOO") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<NONE>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "<NONE>"; |
| String expectedReplacedSource = "<NONE>"; |
| String expectedUnitDisplayString = |
| "public class Test {\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| |
| expectedCompletionNodeToString = "<CompleteOnName:FOO>"; |
| expectedParentNodeToString = |
| "switch (c) {\n" + |
| "case BAR : ;\n" + |
| " break ;\n" + |
| "case <CompleteOnName:FOO> : ;\n" + |
| "}"; |
| completionIdentifier = "FOO"; |
| expectedReplacedSource = "FOO"; |
| expectedUnitDisplayString = |
| "public class Test {\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " {\n" + |
| " switch (c) {\n" + |
| " case BAR : ;\n" + |
| " break ;\n" + |
| " case <CompleteOnName:FOO> : ;\n" + |
| " }\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkMethodParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "full ast"); |
| } |
| //https://bugs.eclipse.org/bugs/show_bug.cgi?id=84554 |
| public void test0006(){ |
| String str = |
| "public class Test {\n" + |
| " void foo() {\n" + |
| " switch(c) {\n" + |
| " case BAR :\n" + |
| " break;\n" + |
| " case FOO\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| String completeBehind = "FOO"; |
| int cursorLocation = str.indexOf("FOO") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<NONE>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "<NONE>"; |
| String expectedReplacedSource = "<NONE>"; |
| String expectedUnitDisplayString = |
| "public class Test {\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| |
| expectedCompletionNodeToString = "<CompleteOnName:FOO>"; |
| expectedParentNodeToString = |
| "switch (c) {\n" + |
| "case BAR : ;\n" + |
| " break ;\n" + |
| "case <CompleteOnName:FOO> : ;\n" + |
| "}"; |
| completionIdentifier = "FOO"; |
| expectedReplacedSource = "FOO"; |
| expectedUnitDisplayString = |
| "public class Test {\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " {\n" + |
| " switch (c) {\n" + |
| " case BAR : ;\n" + |
| " break ;\n" + |
| " case <CompleteOnName:FOO> : ;\n" + |
| " }\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkMethodParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "full ast"); |
| } |
| //https://bugs.eclipse.org/bugs/show_bug.cgi?id=84554 |
| public void test0007(){ |
| String str = |
| "public class Test {\n" + |
| " void foo() {\n" + |
| " switch(c) {\n" + |
| " case BAR0 :\n" + |
| " switch(c) {\n" + |
| " case BAR :\n" + |
| " break;\n" + |
| " case FOO\n" + |
| " }\n" + |
| " break;\n" + |
| " case BAR2 :\n" + |
| " break;\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| String completeBehind = "FOO"; |
| int cursorLocation = str.indexOf("FOO") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<NONE>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "<NONE>"; |
| String expectedReplacedSource = "<NONE>"; |
| String expectedUnitDisplayString = |
| "public class Test {\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| |
| expectedCompletionNodeToString = "<CompleteOnName:FOO>"; |
| expectedParentNodeToString = |
| "switch (c) {\n" + |
| "case BAR : ;\n" + |
| " break ;\n" + |
| "case <CompleteOnName:FOO> : ;\n" + |
| "}"; |
| completionIdentifier = "FOO"; |
| expectedReplacedSource = "FOO"; |
| expectedUnitDisplayString = |
| "public class Test {\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " {\n" + |
| " {\n" + |
| " switch (c) {\n" + |
| " case BAR : ;\n" + |
| " break ;\n" + |
| " case <CompleteOnName:FOO> : ;\n" + |
| " }\n" + |
| " }\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkMethodParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "full ast"); |
| } |
| //https://bugs.eclipse.org/bugs/show_bug.cgi?id=84554 |
| public void test0008(){ |
| String str = |
| "public enum Test {\n" + |
| " A() {\n" + |
| " void foo() {\n" + |
| " zzz\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| String completeBehind = "zzz"; |
| int cursorLocation = str.indexOf("zzz") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<CompleteOnName:zzz>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "zzz"; |
| String expectedReplacedSource = "zzz"; |
| String expectedUnitDisplayString = |
| "public enum Test {\n" + |
| " A() {\n" + |
| " () {\n" + |
| " super();\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " <CompleteOnName:zzz>;\n" + |
| " }\n" + |
| " },\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " <clinit>() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| } |
| //https://bugs.eclipse.org/bugs/show_bug.cgi?id=84554 |
| public void test0009(){ |
| String str = |
| "public enum Test {\n" + |
| " B,\n" + |
| " A() {\n" + |
| " void foo() {\n" + |
| " zzz\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| String completeBehind = "zzz"; |
| int cursorLocation = str.indexOf("zzz") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<CompleteOnName:zzz>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "zzz"; |
| String expectedReplacedSource = "zzz"; |
| String expectedUnitDisplayString = |
| "public enum Test {\n" + |
| " B(),\n" + |
| " A() {\n" + |
| " () {\n" + |
| " super();\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " <CompleteOnName:zzz>;\n" + |
| " }\n" + |
| " },\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " <clinit>() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| } |
| //https://bugs.eclipse.org/bugs/show_bug.cgi?id=84554 |
| public void test0010(){ |
| String str = |
| "public enum Test {\n" + |
| " #\n" + |
| " B,\n" + |
| " A() {\n" + |
| " void foo() {\n" + |
| " zzz\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| String completeBehind = "zzz"; |
| int cursorLocation = str.indexOf("zzz") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<CompleteOnName:zzz>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "zzz"; |
| String expectedReplacedSource = "zzz"; |
| String expectedUnitDisplayString = |
| "public enum Test {\n" + |
| " B(),\n" + |
| " A() {\n" + |
| " () {\n" + |
| " super();\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " <CompleteOnName:zzz>;\n" + |
| " }\n" + |
| " },\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " <clinit>() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| } |
| //https://bugs.eclipse.org/bugs/show_bug.cgi?id=84554 |
| public void test0011(){ |
| String str = |
| "public enum Test {\n" + |
| " B() {\n" + |
| " void foo() {\n" + |
| " }\n" + |
| " },\n" + |
| " A() {\n" + |
| " void foo() {\n" + |
| " zzz\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| String completeBehind = "zzz"; |
| int cursorLocation = str.indexOf("zzz") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<CompleteOnName:zzz>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "zzz"; |
| String expectedReplacedSource = "zzz"; |
| String expectedUnitDisplayString = |
| "public enum Test {\n" + |
| " B() {\n" + |
| " () {\n" + |
| " super();\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " }\n" + |
| " },\n" + |
| " A() {\n" + |
| " () {\n" + |
| " super();\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " <CompleteOnName:zzz>;\n" + |
| " }\n" + |
| " },\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " <clinit>() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| } |
| //https://bugs.eclipse.org/bugs/show_bug.cgi?id=84554 |
| public void test0012(){ |
| String str = |
| "public enum Test {\n" + |
| " #\n" + |
| " B() {\n" + |
| " void foo() {\n" + |
| " }\n" + |
| " },\n" + |
| " A() {\n" + |
| " void foo() {\n" + |
| " zzz\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| String completeBehind = "zzz"; |
| int cursorLocation = str.indexOf("zzz") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<CompleteOnName:zzz>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "zzz"; |
| String expectedReplacedSource = "zzz"; |
| String expectedUnitDisplayString = |
| "public enum Test {\n" + |
| " B() {\n" + |
| " () {\n" + |
| " super();\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " }\n" + |
| " },\n" + |
| " A() {\n" + |
| " () {\n" + |
| " super();\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " <CompleteOnName:zzz>;\n" + |
| " }\n" + |
| " },\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " <clinit>() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| } |
| //https://bugs.eclipse.org/bugs/show_bug.cgi?id=84554 |
| public void test0013(){ |
| String str = |
| "public enum Test {\n" + |
| " #\n" + |
| " B() {\n" + |
| " void foo() {\n" + |
| " #\n" + |
| " }\n" + |
| " },\n" + |
| " A() {\n" + |
| " void foo() {\n" + |
| " zzz\n" + |
| " }\n" + |
| " }\n" + |
| "}\n"; |
| |
| String completeBehind = "zzz"; |
| int cursorLocation = str.indexOf("zzz") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<CompleteOnName:zzz>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "zzz"; |
| String expectedReplacedSource = "zzz"; |
| String expectedUnitDisplayString = |
| "public enum Test {\n" + |
| " B() {\n" + |
| " () {\n" + |
| " super();\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " }\n" + |
| " },\n" + |
| " A() {\n" + |
| " () {\n" + |
| " super();\n" + |
| " }\n" + |
| " void foo() {\n" + |
| " <CompleteOnName:zzz>;\n" + |
| " }\n" + |
| " },\n" + |
| " public Test() {\n" + |
| " }\n" + |
| " <clinit>() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| } |
| // https://bugs.eclipse.org/bugs/show_bug.cgi?id=100868 |
| public void test0014(){ |
| String str = |
| "public enum Enum1 {\n"+ |
| " A {\n"+ |
| " tos\n"+ |
| " };\n"+ |
| "}\n"; |
| |
| String completeBehind = "tos"; |
| int cursorLocation = str.indexOf("tos") + completeBehind.length() - 1; |
| String expectedCompletionNodeToString = "<CompleteOnType:tos>"; |
| String expectedParentNodeToString = "<NONE>"; |
| String completionIdentifier = "tos"; |
| String expectedReplacedSource = "tos"; |
| String expectedUnitDisplayString = |
| "public enum Enum1 {\n" + |
| " A() {\n" + |
| " <CompleteOnType:tos>;\n" + |
| " () {\n" + |
| " super();\n" + |
| " }\n" + |
| " },\n" + |
| " public Enum1() {\n" + |
| " }\n" + |
| " <clinit>() {\n" + |
| " }\n" + |
| "}\n"; |
| |
| checkDietParse( |
| str.toCharArray(), |
| cursorLocation, |
| expectedCompletionNodeToString, |
| expectedParentNodeToString, |
| expectedUnitDisplayString, |
| completionIdentifier, |
| expectedReplacedSource, |
| "diet ast"); |
| } |
| } |