diff options
author | Stephan Herrmann | 2011-03-03 19:19:16 +0000 |
---|---|---|
committer | Stephan Herrmann | 2011-03-03 19:19:16 +0000 |
commit | 5d62f79a95479733b5c71f2869adffb6a2c4a5f6 (patch) | |
tree | 9cfedba5cb57397ad506477c1a726545b020db58 /org.eclipse.jdt.core.tests.model | |
parent | b950bc802618b3300d486916a141462cc88afd05 (diff) | |
download | org.eclipse.objectteams-5d62f79a95479733b5c71f2869adffb6a2c4a5f6.tar.gz org.eclipse.objectteams-5d62f79a95479733b5c71f2869adffb6a2c4a5f6.tar.xz org.eclipse.objectteams-5d62f79a95479733b5c71f2869adffb6a2c4a5f6.zip |
update to v_B39
Diffstat (limited to 'org.eclipse.jdt.core.tests.model')
6 files changed, 1499 insertions, 57 deletions
diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/AttachSourceTests.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/AttachSourceTests.java index 299ba6bac..f4d365a36 100644 --- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/AttachSourceTests.java +++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/AttachSourceTests.java @@ -73,8 +73,6 @@ public class AttachSourceTests extends ModifyingResourceTests { private static final int AST_INTERNAL_JLS2 = AST.JLS2; private IPackageFragmentRoot pkgFragmentRoot; - private IType genericType; - private IPackageFragment innerClasses; public AttachSourceTests(String name) { super(name); @@ -162,8 +160,6 @@ private void setUpGenericJar() throws IOException, CoreException { "}" }; addLibrary("generic.jar", "genericsrc.zip", pathAndContents, JavaCore.VERSION_1_5); - IFile jar = getFile("/AttachSourceTests/generic.jar"); - this.genericType = this.currentProject.getPackageFragmentRoot(jar).getPackageFragment("generic").getClassFile("X.class").getType(); } private void setUpInnerClassesJar() throws IOException, CoreException { String[] pathAndContents = new String[] { @@ -199,22 +195,17 @@ private void setUpInnerClassesJar() throws IOException, CoreException { "}" }; addLibrary("innerClasses.jar", "innerClassessrc.zip", pathAndContents, JavaCore.VERSION_1_4); - IFile jar = getFile("/AttachSourceTests/innerClasses.jar"); - this.innerClasses = this.currentProject.getPackageFragmentRoot(jar).getPackageFragment("inner"); } protected void tearDown() throws Exception { IPackageFragmentRoot[] roots = this.currentProject.getAllPackageFragmentRoots(); for (int i = 0; i < roots.length; i++) { IPackageFragmentRoot root = roots[i]; - if (this.genericType != null && root.equals(this.genericType.getPackageFragment().getParent())) continue; - if (this.innerClasses != null && root.equals(this.innerClasses.getParent())) continue; if (root.getKind() == IPackageFragmentRoot.K_BINARY) { attachSource(root, null, null); // detach source } } super.tearDown(); } - /** * Reset the jar placeholder and delete project. */ @@ -342,13 +333,19 @@ public void testClassFileGetElementAt03() throws JavaModelException { * (regression test for bug 119249 codeResolve, search, etc. don't work on constructor of binary inner class) */ public void testClassFileGetElementAt04() throws JavaModelException { - IClassFile classFile = this.innerClasses.getClassFile("X$V.class"); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IClassFile classFile = fragment.getClassFile("X$V.class"); String source = classFile.getSource(); IJavaElement element = classFile.getElementAt(source.indexOf("V(String s)")); assertElementExists( "Unexpected element", "V(inner.X, java.lang.String) [in V [in X$V.class [in inner [in innerClasses.jar [in AttachSourceTests]]]]]", element); + attachSource(root, null, null); // detach source } /* * Ensures that the source of a .class file is implicetely attached when prj=src=bin @@ -612,76 +609,116 @@ public void testZIPArchive4() throws CoreException { * Ensures that the source of a generic method can be retrieved. */ public void testGeneric1() throws JavaModelException { - IMethod method = this.genericType.getMethod("foo", new String[] {"QX<QT;>;"}); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/generic.jar")); + attachSource(root, "/AttachSourceTests/genericsrc.zip", null); + IType type = root.getPackageFragment("generic").getClassFile("X.class").getType(); + IMethod method = type.getMethod("foo", new String[] {"QX<QT;>;"}); assertSourceEquals( "Unexpected source", "void foo(X<T> x) {\n" + " }", method.getSource()); + attachSource(root, null, null); // detach source } /* * Ensures that the source of a generic method can be retrieved. */ public void testGeneric2() throws JavaModelException { - IMethod method = this.genericType.getMethod("foo", new String[] {"QK;", "QV;"}); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/generic.jar")); + attachSource(root, "/AttachSourceTests/genericsrc.zip", null); + IType type = root.getPackageFragment("generic").getClassFile("X.class").getType(); + IMethod method = type.getMethod("foo", new String[] {"QK;", "QV;"}); assertSourceEquals( "Unexpected source", "<K, V> V foo(K key, V value) {\n" + " return value;\n" + " }", method.getSource()); + attachSource(root, null, null); // detach source } /* * Ensures that the source of a generic method can be retrieved. * (regression test for bug 129317 Outline view inconsistent with code */ public void testGeneric3() throws JavaModelException { - IMethod method = this.genericType.getMethod("foo", new String[] {"I", "Lgeneric.X<[Ljava.lang.Object;>;"}); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/generic.jar")); + attachSource(root, "/AttachSourceTests/genericsrc.zip", null); + IType type = root.getPackageFragment("generic").getClassFile("X.class").getType(); + IMethod method = type.getMethod("foo", new String[] {"I", "Lgeneric.X<[Ljava.lang.Object;>;"}); assertSourceEquals( "Unexpected source", "void foo(int i, X<Object[]> x) {\n" + " }", method.getSource()); + attachSource(root, null, null); // detach source } public void testGeneric4() throws JavaModelException { - IMethod method = this.genericType.getMethod("foo", new String[] {"Z", "Lgeneric.X<+Lgeneric.X;>;"}); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/generic.jar")); + attachSource(root, "/AttachSourceTests/genericsrc.zip", null); + IType type = root.getPackageFragment("generic").getClassFile("X.class").getType(); + IMethod method = type.getMethod("foo", new String[] {"Z", "Lgeneric.X<+Lgeneric.X;>;"}); assertSourceEquals( "Unexpected source", "void foo(boolean b, X<? extends X> x) {\n" + " }", method.getSource()); + attachSource(root, null, null); // detach source } public void testGeneric5() throws JavaModelException { - IMethod method = this.genericType.getMethod("foo", new String[] {"F", "Lgeneric.X<*>;"}); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/generic.jar")); + attachSource(root, "/AttachSourceTests/genericsrc.zip", null); + IType type = root.getPackageFragment("generic").getClassFile("X.class").getType(); + IMethod method = type.getMethod("foo", new String[] {"F", "Lgeneric.X<*>;"}); assertSourceEquals( "Unexpected source", "void foo(float f, X<?> x) {\n" + " }", method.getSource()); + attachSource(root, null, null); // detach source } public void testGeneric6() throws JavaModelException { - IMethod method = this.genericType.getMethod("foo", new String[] {"Lgeneric.Y<+Ljava.lang.Integer;+Ljava.lang.Object;>;"}); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/generic.jar")); + attachSource(root, "/AttachSourceTests/genericsrc.zip", null); + IType type = root.getPackageFragment("generic").getClassFile("X.class").getType(); + IMethod method = type.getMethod("foo", new String[] {"Lgeneric.Y<+Ljava.lang.Integer;+Ljava.lang.Object;>;"}); assertSourceEquals( "Unexpected source", "void foo(Y<? extends Integer, ? extends Object> y) {\n" + " }", method.getSource()); + attachSource(root, null, null); // detach source } public void testGeneric7() throws JavaModelException { - IMethod method = this.genericType.getMethod("foo", new String[] {"Lgeneric.Z.Inner<Ljava.lang.Object;>;"}); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/generic.jar")); + attachSource(root, "/AttachSourceTests/genericsrc.zip", null); + IType type = root.getPackageFragment("generic").getClassFile("X.class").getType(); + IMethod method = type.getMethod("foo", new String[] {"Lgeneric.Z.Inner<Ljava.lang.Object;>;"}); assertSourceEquals( "Unexpected source", "void foo(Z.Inner<Object> inner) {\n" + " }", method.getSource()); + attachSource(root, null, null); // detach source } public void testGeneric8() throws JavaModelException { - IMethod method = this.genericType.getMethod("foo", new String[] {"Lgeneric.AType<Ljava.lang.Object;>;"}); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/generic.jar")); + attachSource(root, "/AttachSourceTests/genericsrc.zip", null); + IType type = root.getPackageFragment("generic").getClassFile("X.class").getType(); + IMethod method = type.getMethod("foo", new String[] {"Lgeneric.AType<Ljava.lang.Object;>;"}); assertSourceEquals( "Unexpected source", "void foo(AType<Object> t) {\n" + " }", method.getSource()); + attachSource(root, null, null); // detach source } /** * Ensures that name ranges exists for BinaryMembers that have @@ -705,13 +742,25 @@ public void testGetNameRange02() throws JavaModelException { * (regression test for bug 119249 codeResolve, search, etc. don't work on constructor of binary inner class) */ public void testGetNameRange03() throws JavaModelException { - IClassFile classFile = this.innerClasses.getClassFile("X$V.class"); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IClassFile classFile = fragment.getClassFile("X$V.class"); IMethod constructor = classFile.getType().getMethod("V", new String[] {"Linner.X;", "Ljava.lang.String;"}); assertSourceEquals("Unexpected name source", "V", getNameSource(classFile.getSource(), constructor)); + + attachSource(root, null, null); // detach source } //https://bugs.eclipse.org/bugs/show_bug.cgi?id=108784 public void testGetNameRange04() throws JavaModelException { - IClassFile classFile = this.innerClasses.getClassFile("X$Inner.class"); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IClassFile classFile = fragment.getClassFile("X$Inner.class"); IMethod[] methods = classFile.getType().getMethods(); for (int i = 0; i < methods.length; i++) { IMethod iMethod = methods[i]; @@ -719,6 +768,8 @@ public void testGetNameRange04() throws JavaModelException { assertTrue("Unexpected name range", nameRange.getOffset() != -1); assertTrue("Unexpected name range", nameRange.getLength() != 0); } + + attachSource(root, null, null); // detach source } /** * Retrieves the source attachment paths for jar root. @@ -754,7 +805,12 @@ public void testGetSourceRangeInnerClass() throws JavaModelException { * Ensures that the source of an inner class can be retrieved. */ public void testInnerClass1() throws JavaModelException { - IType type = this.innerClasses.getClassFile("X.class").getType(); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IType type = fragment.getClassFile("X.class").getType(); assertSourceEquals( "Unexpected source", "public class X {\n" + @@ -786,54 +842,84 @@ public void testInnerClass1() throws JavaModelException { " }\n" + "}", type.getSource()); + attachSource(root, null, null); // detach source } /* * Ensures that the source of an inner class can be retrieved. */ public void testInnerClass2() throws JavaModelException { - IType type = this.innerClasses.getClassFile("X$1.class").getType(); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IType type = fragment.getClassFile("X$1.class").getType(); assertSourceEquals( "Unexpected source", "new X() {}", type.getSource()); + attachSource(root, null, null); // detach source } /* * Ensures that the source of an inner class can be retrieved. */ public void testInnerClass3() throws JavaModelException { - IType type = this.innerClasses.getClassFile("X$2.class").getType(); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IType type = fragment.getClassFile("X$2.class").getType(); assertSourceEquals( "Unexpected source", "new Y() {\n" + " class Z {}\n" + " }", type.getSource()); + attachSource(root, null, null); // detach source } /* * Ensures that the source of an inner class can be retrieved. */ public void testInnerClass4() throws JavaModelException { - IType type = this.innerClasses.getClassFile("X$3.class").getType(); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IType type = fragment.getClassFile("X$3.class").getType(); assertSourceEquals( "Unexpected source", "new W() {}", type.getSource()); + attachSource(root, null, null); // detach source } /* * Ensures that the source of an inner class can be retrieved. */ public void testInnerClass5() throws JavaModelException { - IType type = this.innerClasses.getClassFile("X$1$Y.class").getType(); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IType type = fragment.getClassFile("X$1$Y.class").getType(); assertSourceEquals( "Unexpected source", "class Y {}", type.getSource()); + attachSource(root, null, null); // detach source } /* * Ensures that the source of an inner class can be retrieved. */ public void testInnerClass6() throws JavaModelException { - IType type = this.innerClasses.getClassFile("X$1$W.class").getType(); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IType type = fragment.getClassFile("X$1$W.class").getType(); assertSourceEquals( "Unexpected source", "class W {\n" + @@ -842,22 +928,34 @@ public void testInnerClass6() throws JavaModelException { " }\n" + " }", type.getSource()); + attachSource(root, null, null); // detach source } /* * Ensures that the source of an inner class can be retrieved. */ public void testInnerClass7() throws JavaModelException { - IType type = this.innerClasses.getClassFile("X$2$Z.class").getType(); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IType type = fragment.getClassFile("X$2$Z.class").getType(); assertSourceEquals( "Unexpected source", "class Z {}", type.getSource()); + attachSource(root, null, null); // detach source } /* * Ensures that the source of an inner class can be retrieved. */ public void testInnerClass8() throws JavaModelException { - IType type = this.innerClasses.getClassFile("X$V.class").getType(); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IType type = fragment.getClassFile("X$V.class").getType(); assertSourceEquals( "Unexpected source", "class V {\n" + @@ -865,13 +963,19 @@ public void testInnerClass8() throws JavaModelException { " }\n" + " }", type.getSource()); + attachSource(root, null, null); // detach source } /* * Ensures that the source of an inner class can be retrieved. * (regression test for bug 124611 IAE in Signature.createCharArrayTypeSignature) */ public void testInnerClass9() throws JavaModelException { - IType type = this.innerClasses.getClassFile("X$4$U.class").getType(); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IType type = fragment.getClassFile("X$4$U.class").getType(); assertSourceEquals( "Unexpected source", "class U {\n" + @@ -879,6 +983,7 @@ public void testInnerClass9() throws JavaModelException { " }\n" + " }", type.getSource()); + attachSource(root, null, null); // detach source } /** @@ -1134,7 +1239,6 @@ public void testRootPath5() throws JavaModelException { cf.getSource()); attachSource(root, null, null); // detach source - root.close(); } /** * Attach a jar with a source attachment that doesn't contain the source folders @@ -1159,7 +1263,6 @@ public void testRootPath6() throws JavaModelException { cf.getSource()); attachSource(root, null, null); // detach source - root.close(); } /** * Attach a jar with a source attachment that doesn't contain the source folders @@ -1192,7 +1295,6 @@ public void testRootPath7() throws JavaModelException { cf.getSource()); attachSource(root, null, null); // detach source - root.close(); } /** * Attach a jar with a source attachment that contains the source folders @@ -1225,7 +1327,6 @@ public void testRootPath8() throws JavaModelException { cf.getSource()); attachSource(root, null, null); // detach source - root.close(); } /** * Attach a jar with a source attachment that contains the source folders @@ -1258,7 +1359,6 @@ public void testRootPath9() throws JavaModelException { cf.getSource()); attachSource(root, null, null); // detach source - root.close(); } /** * Attach a jar with a source attachment that is itself @@ -1280,7 +1380,6 @@ public void testRootPath10() throws JavaModelException { "}", cf.getSource()); attachSource(root, null, null); // detach source - root.close(); } /** * http://bugs.eclipse.org/bugs/show_bug.cgi?id=35965 @@ -1309,7 +1408,6 @@ public void testRootPath11() throws JavaModelException { assertTrue("Not a binary root", root.getKind() == IPackageFragmentRoot.K_BINARY); assertEquals("wrong jdk level", ClassFileConstants.JDK1_2, Util.getJdkLevel(root.getResource())); attachSource(root, null, null); // detach source - root.close(); } /** * Attach a jar with a source attachment that is itself. The jar contains 2 root paths for the same class file. @@ -1328,7 +1426,6 @@ public void testRootPath12() throws JavaModelException { "}\n", cf.getSource()); attachSource(root, null, null); // detach source - root.close(); } /** * @see "http://bugs.eclipse.org/bugs/show_bug.cgi?id=110172" @@ -1407,7 +1504,6 @@ public void testBug110172() throws JavaModelException { } } finally { attachSource(root, null, null); // detach source - root.close(); } } /** @@ -1433,7 +1529,6 @@ public void testRootPath13() throws JavaModelException { "}", cf.getSource()); attachSource(root, null, null); // detach source - root.close(); } /** * @test bug 153133: [model] toggle breakpoint in constructor creates a class load breakpoint @@ -1476,7 +1571,6 @@ public void testBug153133() throws JavaModelException { } } finally { removeClasspathEntry(new Path("/JavaSearchBugs/lib/b148215.jar")); - root.close(); } } // https://bugs.eclipse.org/bugs/show_bug.cgi?id=267046 @@ -1521,7 +1615,6 @@ public void test267046() throws JavaModelException { } attachSource(root, null, null); // detach source - root.close(); } // https://bugs.eclipse.org/bugs/show_bug.cgi?id=88265 // Test to ensure availability and correctness of API SourceRange @@ -1541,11 +1634,17 @@ public void test88265 () { * https://bugs.eclipse.org/bugs/show_bug.cgi?id=285230 */ public void testClassFileBuffer() throws JavaModelException { - IClassFile classFile = this.innerClasses.getClassFile("X$V.class"); + IJavaProject project = this.getJavaProject("/AttachSourceTests"); + IPackageFragmentRoot root = project.getPackageFragmentRoot(getFile("/AttachSourceTests/innerClasses.jar")); + attachSource(root, "/AttachSourceTests/innerClassessrc.zip", null); + IPackageFragment fragment = root.getPackageFragment("inner"); + + IClassFile classFile = fragment.getClassFile("X$V.class"); IBuffer buffer = classFile.getBuffer(); - classFile = this.innerClasses.getClassFile("X.class"); + classFile = fragment.getClassFile("X.class"); IBuffer buffer2 = classFile.getBuffer(); assertTrue("Same buffer is not reused", buffer2 == buffer); + attachSource(root, null, null); // detach source } /** * https://bugs.eclipse.org/bugs/show_bug.cgi?id=242029 @@ -1567,7 +1666,6 @@ public void testConstructorAccess() throws JavaModelException { " }", methods[0].getSource()); attachSource(root, null, null); // detach source - root.close(); } /** * https://bugs.eclipse.org/bugs/show_bug.cgi?id=336046 diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/CompilationUnitTests.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/CompilationUnitTests.java index 796ed6d56..1a0648cd2 100644 --- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/CompilationUnitTests.java +++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/CompilationUnitTests.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2000, 2010 IBM Corporation and others. + * Copyright (c) 2000, 2011 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 @@ -7,6 +7,7 @@ * * Contributors: * IBM Corporation - initial API and implementation + * Stephan Herrmann - contribution for bug 337868 - [compiler][model] incomplete support for package-info.java when using SearchableEnvironment *******************************************************************************/ package org.eclipse.jdt.core.tests.model; @@ -23,6 +24,9 @@ import org.eclipse.core.resources.IWorkspace; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.jdt.core.*; +import org.eclipse.jdt.core.compiler.IProblem; +import org.eclipse.jdt.core.dom.AST; +import org.eclipse.jdt.core.dom.ASTParser; import org.eclipse.jdt.core.dom.rewrite.ImportRewrite; import org.eclipse.jdt.internal.core.Buffer; import org.eclipse.jdt.internal.core.CompilationUnit; @@ -478,6 +482,104 @@ public void testDeprecatedFlag09() throws JavaModelException { } /* + * Bug 337868 - [compiler][model] incomplete support for package-info.java when using SearchableEnvironment + * Ensure that package level annotation is evaluated during AST creation. + */ +public void testDeprecatedFlag10() throws CoreException { + try { + createFolder("/P/src/p2"); + + createFile( + "/P/src/p2/package-info.java", + "@java.lang.Deprecated package p2;\n" + ); + + // workaround for missing type in jclMin: + createFolder("/P/src/java/lang"); + createFile( + "/P/src/java/lang/Deprecated.java", + "package java.lang;\n" + + "@Retention(RetentionPolicy.RUNTIME)\n" + + "public @interface Deprecated {\n" + + "}\n" + ); + + createFile("/P/src/p2/C.java", + "package p2;\n" + + "public class C {}\n"); + + createFile("/P/src/p/D.java", + "package p;\n" + + "public class D extends p2.C {}\n"); + ICompilationUnit cuD = getCompilationUnit("/P/src/p/D.java"); + + ASTParser parser = ASTParser.newParser(AST.JLS3); + parser.setProject(this.testProject); + parser.setSource(cuD); + parser.setResolveBindings(true); + org.eclipse.jdt.core.dom.CompilationUnit cuAST = (org.eclipse.jdt.core.dom.CompilationUnit) parser.createAST(null); + IProblem[] problems = cuAST.getProblems(); + assertEquals("Should have 1 problem", 1, problems.length); + assertEquals("Should have a deprecation warning", "The type C is deprecated", problems[0].getMessage()); + } finally { + deleteFile("/P/src/p/D.java"); + deleteFolder("/P/src/p2"); + deleteFolder("/P/src/java/lang"); + } +} + +/* + * Bug 337868 - [compiler][model] incomplete support for package-info.java when using SearchableEnvironment + * Ensure that package level annotation is evaluated during AST creation. + * a working copy for package-info exists and must be used. + */ +public void testDeprecatedFlag11() throws CoreException { + try { + createFolder("/P/src/p2"); + + createFile( + "/P/src/p2/package-info.java", + "@java.lang.Deprecated package p2;\n" + ); + WorkingCopyOwner myWCOwner = newWorkingCopyOwner(null); + getCompilationUnit("/P/src/p2/package-info.java").getWorkingCopy(myWCOwner, null); + + + // workaround for missing type in jclMin: + createFolder("/P/src/java/lang"); + createFile( + "/P/src/java/lang/Deprecated.java", + "package java.lang;\n" + + "@Retention(RetentionPolicy.RUNTIME)\n" + + "public @interface Deprecated {\n" + + "}\n" + ); + + createFile("/P/src/p2/C.java", + "package p2;\n" + + "public class C {}\n"); + + createFile("/P/src/p/D.java", + "package p;\n" + + "public class D extends p2.C {}\n"); + ICompilationUnit cuD = getCompilationUnit("/P/src/p/D.java"); + + ASTParser parser = ASTParser.newParser(AST.JLS3); + parser.setWorkingCopyOwner(myWCOwner); + parser.setProject(this.testProject); + parser.setSource(cuD); + parser.setResolveBindings(true); + org.eclipse.jdt.core.dom.CompilationUnit cuAST = (org.eclipse.jdt.core.dom.CompilationUnit) parser.createAST(null); + IProblem[] problems = cuAST.getProblems(); + assertEquals("Should have 1 problem", 1, problems.length); + assertEquals("Should have a deprecation warning", "The type C is deprecated", problems[0].getMessage()); + } finally { + deleteFile("/P/src/p/D.java"); + deleteFolder("/P/src/p2"); + deleteFolder("/P/src/java/lang"); + } +} +/* * Ensures that the primary type of a cu can be found. */ public void testFindPrimaryType1() throws JavaModelException { diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/CompletionTests.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/CompletionTests.java index 6d76b52bb..2c453ff89 100644 --- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/CompletionTests.java +++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/CompletionTests.java @@ -15,6 +15,7 @@ import java.util.Hashtable; import java.util.Map; import junit.framework.Test; +import junit.framework.TestSuite; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IProgressMonitor; @@ -42,7 +43,948 @@ static { // TESTS_NAMES = new String[] { "testCompletionMethodDeclaration17"}; } public static Test suite() { - return buildModelTestSuite(CompletionTests.class); + //return buildModelTestSuite(CompletionTests.class); + TestSuite suite = new Suite(CompletionTests.class.getName()); + suite.addTest(new CompletionTests("testAbortCompletion1")); + suite.addTest(new CompletionTests("testAbortCompletion2")); + suite.addTest(new CompletionTests("testArrayInitializer1")); + suite.addTest(new CompletionTests("testBug132679")); + suite.addTest(new CompletionTests("testBug164311")); + suite.addTest(new CompletionTests("testBug164311_2")); + suite.addTest(new CompletionTests("testBug96213")); + suite.addTest(new CompletionTests("testBug99811")); + suite.addTest(new CompletionTests("testBug169682a")); + suite.addTest(new CompletionTests("testBug169682b")); + suite.addTest(new CompletionTests("testBug275518a")); + suite.addTest(new CompletionTests("testBug275518b")); + suite.addTest(new CompletionTests("testBug275518c")); + suite.addTest(new CompletionTests("testCamelCaseField1")); + suite.addTest(new CompletionTests("testCamelCaseLocalVariable1")); + suite.addTest(new CompletionTests("testCamelCaseMethod1")); + suite.addTest(new CompletionTests("testCamelCaseMethodDeclaration1")); + suite.addTest(new CompletionTests("testCamelCaseType1")); + suite.addTest(new CompletionTests("testCamelCaseType2")); + suite.addTest(new CompletionTests("testCamelCaseType3")); + suite.addTest(new CompletionTests("testCamelCaseType4")); + suite.addTest(new CompletionTests("testCamelCaseType5")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef01")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef02")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef03")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef04")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef05")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef06")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef07")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef08")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef09")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef10")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef11")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef12")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef13")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef13b")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef14")); + suite.addTest(new CompletionTests("testCatchClauseExceptionRef15")); + suite.addTest(new CompletionTests("testCompletion2InterfacesWithSameMethod")); + suite.addTest(new CompletionTests("testCompletionAbstractMethod1")); + suite.addTest(new CompletionTests("testCompletionAbstractMethod2")); + suite.addTest(new CompletionTests("testCompletionAbstractMethod3")); + suite.addTest(new CompletionTests("testCompletionAbstractMethod4")); + suite.addTest(new CompletionTests("testCompletionAbstractMethodRelevance1")); + suite.addTest(new CompletionTests("testCompletionAbstractMethodRelevance2")); + suite.addTest(new CompletionTests("testCompletionAfterIf1")); + suite.addTest(new CompletionTests("testCompletionAfterIf2")); + suite.addTest(new CompletionTests("testCompletionAfterCase1")); + suite.addTest(new CompletionTests("testCompletionAfterCase2")); + suite.addTest(new CompletionTests("testCompletionAfterCase3")); + suite.addTest(new CompletionTests("testCompletionAfterCase4")); + suite.addTest(new CompletionTests("testCompletionAfterEqualEqual1")); + suite.addTest(new CompletionTests("testCompletionAfterEqualEqual2")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof01")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof02_01")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof02_02")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof02_03")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof02_04")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof03_01")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof03_02")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof03_03")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof03_04")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof03_05")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof03_06")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof04")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof05")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof06_01")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof06_02")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof07")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof08")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof09")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof10")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof11")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof12")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof13")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof14")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof15")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof16")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof17")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof18_01")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof18_02")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof18_03")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof19")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof20")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof21")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof22_01")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof22_02")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof22_03")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof22_04")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof23")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof24_1")); + suite.addTest(new CompletionTests("testCompletionAfterInstanceof24_2")); + suite.addTest(new CompletionTests("testCompletionAfterSupercall1")); + suite.addTest(new CompletionTests("testCompletionAfterSwitch")); + suite.addTest(new CompletionTests("testCompletionAllMemberTypes")); + suite.addTest(new CompletionTests("testCompletionAllMemberTypes2")); + suite.addTest(new CompletionTests("testCompletionAllMemberTypes3")); + suite.addTest(new CompletionTests("testCompletionAllMemberTypes4")); + suite.addTest(new CompletionTests("testCompletionAllMemberTypes5")); + suite.addTest(new CompletionTests("testCompletionAllMemberTypes6")); + suite.addTest(new CompletionTests("testCompletionAllMemberTypes7")); + suite.addTest(new CompletionTests("testCompletionAllocationExpressionIsParent1")); + suite.addTest(new CompletionTests("testCompletionAllocationExpressionIsParent2")); + suite.addTest(new CompletionTests("testCompletionAllocationExpressionIsParent3")); + suite.addTest(new CompletionTests("testCompletionAllocationExpressionIsParent4")); + suite.addTest(new CompletionTests("testCompletionAllocationExpressionIsParent5")); + suite.addTest(new CompletionTests("testCompletionAllocationExpressionIsParent6")); + suite.addTest(new CompletionTests("testCompletionAmbiguousFieldName")); + suite.addTest(new CompletionTests("testCompletionAmbiguousFieldName2")); + suite.addTest(new CompletionTests("testCompletionAmbiguousFieldName3")); + suite.addTest(new CompletionTests("testCompletionAmbiguousFieldName4")); + suite.addTest(new CompletionTests("testCompletionAmbiguousType")); + suite.addTest(new CompletionTests("testCompletionAmbiguousType2")); + suite.addTest(new CompletionTests("testCompletionArgumentName")); + suite.addTest(new CompletionTests("testCompletionArrayAccess1")); + suite.addTest(new CompletionTests("testCompletionArrayClone")); + suite.addTest(new CompletionTests("testCompletionArrayLength")); + suite.addTest(new CompletionTests("testCompletionArraysCloneMethod")); + suite.addTest(new CompletionTests("testCompletionAssignmentInMethod1")); + suite.addTest(new CompletionTests("testCompletionAssignmentInMethod2")); + suite.addTest(new CompletionTests("testCompletionAssignmentInMethod3")); + suite.addTest(new CompletionTests("testCompletionAssignmentInMethod4")); + suite.addTest(new CompletionTests("testCompletionBasicAnonymousDeclaration1")); + suite.addTest(new CompletionTests("testCompletionBasicCompletionContext")); + suite.addTest(new CompletionTests("testCompletionBasicField1")); + suite.addTest(new CompletionTests("testCompletionBasicKeyword1")); + suite.addTest(new CompletionTests("testCompletionBasicLocalVariable1")); + suite.addTest(new CompletionTests("testCompletionBasicMethod1")); + suite.addTest(new CompletionTests("testCompletionBasicMethodDeclaration1")); + suite.addTest(new CompletionTests("testCompletionBasicPackage1")); + suite.addTest(new CompletionTests("testCompletionBasicPotentialMethodDeclaration1")); + suite.addTest(new CompletionTests("testCompletionBasicType1")); + suite.addTest(new CompletionTests("testCompletionBasicType2")); + suite.addTest(new CompletionTests("testCompletionBasicType3")); + suite.addTest(new CompletionTests("testCompletionBasicVariableDeclaration1")); + suite.addTest(new CompletionTests("testCompletionBinaryOperator1")); + suite.addTest(new CompletionTests("testCompletionBinaryOperator2")); + suite.addTest(new CompletionTests("testCompletionBinaryOperator3")); + suite.addTest(new CompletionTests("testCompletionCaseInsensitive")); + suite.addTest(new CompletionTests("testCompletionCaseInsensitivePackage")); + suite.addTest(new CompletionTests("testCompletionCastIsParent1")); + suite.addTest(new CompletionTests("testCompletionCastIsParent2")); + suite.addTest(new CompletionTests("testCompletionCatchArgumentName")); + suite.addTest(new CompletionTests("testCompletionCatchArgumentName2")); + suite.addTest(new CompletionTests("testCompletionClassLiteralAfterAnonymousType1")); + suite.addTest(new CompletionTests("testCompletionConditionalExpression1")); + suite.addTest(new CompletionTests("testCompletionConditionalExpression2")); + suite.addTest(new CompletionTests("testCompletionConditionalExpression3")); + suite.addTest(new CompletionTests("testCompletionConstructorForAnonymousType")); + suite.addTest(new CompletionTests("testCompletionEmptyToken1")); + suite.addTest(new CompletionTests("testCompletionEmptyToken2")); + suite.addTest(new CompletionTests("testCompletionEmptyTypeName1")); + suite.addTest(new CompletionTests("testCompletionEmptyTypeName2")); + suite.addTest(new CompletionTests("testCompletionEmptyTypeName3")); + suite.addTest(new CompletionTests("testCompletionEmptyTypeName4")); + suite.addTest(new CompletionTests("testCompletionEndOfCompilationUnit")); + suite.addTest(new CompletionTests("testCompletionExactNameCaseInsensitive")); + suite.addTest(new CompletionTests("testCompletionExpectedTypeIsNotValid")); + suite.addTest(new CompletionTests("testCompletionExpectedTypeOnEmptyToken1")); + suite.addTest(new CompletionTests("testCompletionExpectedTypeOnEmptyToken3")); + suite.addTest(new CompletionTests("testCompletionExpectedTypeOnEmptyToken4")); + suite.addTest(new CompletionTests("testCompletionFieldInitializer1")); + suite.addTest(new CompletionTests("testCompletionFieldInitializer2")); + suite.addTest(new CompletionTests("testCompletionFieldInitializer3")); + suite.addTest(new CompletionTests("testCompletionFieldInitializer4")); + suite.addTest(new CompletionTests("testCompletionFieldName")); + suite.addTest(new CompletionTests("testCompletionFieldName2")); + suite.addTest(new CompletionTests("testCompletionFieldName3")); + suite.addTest(new CompletionTests("testCompletionFieldName4")); + suite.addTest(new CompletionTests("testCompletionFieldName5")); + suite.addTest(new CompletionTests("testCompletionFieldName6")); + suite.addTest(new CompletionTests("testCompletionFieldName7")); + suite.addTest(new CompletionTests("testCompletionFindClass")); + suite.addTest(new CompletionTests("testCompletionFindClass2")); + suite.addTest(new CompletionTests("testCompletionFindClassDefaultPackage")); + suite.addTest(new CompletionTests("testCompletionFindConstructor")); + suite.addTest(new CompletionTests("testCompletionFindConstructor2")); + suite.addTest(new CompletionTests("testCompletionFindConstructor3")); + suite.addTest(new CompletionTests("testCompletionFindConstructor4")); + suite.addTest(new CompletionTests("testCompletionFindConstructor5")); + suite.addTest(new CompletionTests("testCompletionFindExceptions1")); + suite.addTest(new CompletionTests("testCompletionFindExceptions2")); + suite.addTest(new CompletionTests("testCompletionFindField1")); + suite.addTest(new CompletionTests("testCompletionFindField2")); + suite.addTest(new CompletionTests("testCompletionFindField3")); + suite.addTest(new CompletionTests("testCompletionFindImport1")); + suite.addTest(new CompletionTests("testCompletionFindImport2")); + suite.addTest(new CompletionTests("testCompletionFindLocalVariable")); + suite.addTest(new CompletionTests("testCompletionFindMemberType1")); + suite.addTest(new CompletionTests("testCompletionFindMemberType2")); + suite.addTest(new CompletionTests("testCompletionFindMethod1")); + suite.addTest(new CompletionTests("testCompletionFindMethod2")); + suite.addTest(new CompletionTests("testCompletionFindMethodInThis")); + suite.addTest(new CompletionTests("testCompletionFindMethodWhenInProcess")); + suite.addTest(new CompletionTests("testCompletionFindSecondaryType1")); + suite.addTest(new CompletionTests("testCompletionFindSuperInterface")); + suite.addTest(new CompletionTests("testCompletionFindThisDotField")); + suite.addTest(new CompletionTests("testCompletionImportedType1")); + suite.addTest(new CompletionTests("testCompletionImportedType2")); + suite.addTest(new CompletionTests("testCompletionImportedType3")); + suite.addTest(new CompletionTests("testCompletionImportedType4")); + suite.addTest(new CompletionTests("testCompletionImportedType5")); + suite.addTest(new CompletionTests("testCompletionImportedType6")); + suite.addTest(new CompletionTests("testCompletionImportedType7")); + suite.addTest(new CompletionTests("testCompletionImportedType8")); + suite.addTest(new CompletionTests("testCompletionInsideExtends1")); + suite.addTest(new CompletionTests("testCompletionInsideExtends10")); + suite.addTest(new CompletionTests("testCompletionInsideExtends11")); + suite.addTest(new CompletionTests("testCompletionInsideExtends12")); + suite.addTest(new CompletionTests("testCompletionInsideExtends13")); + suite.addTest(new CompletionTests("testCompletionInsideExtends14")); + suite.addTest(new CompletionTests("testCompletionInsideExtends2")); + suite.addTest(new CompletionTests("testCompletionInsideExtends3")); + suite.addTest(new CompletionTests("testCompletionInsideExtends4")); + suite.addTest(new CompletionTests("testCompletionInsideExtends5")); + suite.addTest(new CompletionTests("testCompletionInsideExtends6")); + suite.addTest(new CompletionTests("testCompletionInsideExtends7")); + suite.addTest(new CompletionTests("testCompletionInsideExtends8")); + suite.addTest(new CompletionTests("testCompletionInsideExtends9")); + suite.addTest(new CompletionTests("testCompletionInsideGenericClass")); + suite.addTest(new CompletionTests("testCompletionInsideStaticMethod")); + suite.addTest(new CompletionTests("testCompletionInstanceofOperator1")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract1")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract10")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract11")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract12")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract13")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract14")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract15")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract16")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract2")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract3")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract4")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract5")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract6")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract7")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract8")); + suite.addTest(new CompletionTests("testCompletionKeywordAbstract9")); + suite.addTest(new CompletionTests("testCompletionKeywordAssert1")); + suite.addTest(new CompletionTests("testCompletionKeywordAssert2")); + suite.addTest(new CompletionTests("testCompletionKeywordAssert3")); + suite.addTest(new CompletionTests("testCompletionKeywordAssert4")); + suite.addTest(new CompletionTests("testCompletionKeywordAssert5")); + suite.addTest(new CompletionTests("testCompletionKeywordAssert6")); + suite.addTest(new CompletionTests("testCompletionKeywordBreak1")); + suite.addTest(new CompletionTests("testCompletionKeywordBreak2")); + suite.addTest(new CompletionTests("testCompletionKeywordBreak3")); + suite.addTest(new CompletionTests("testCompletionKeywordBreak4")); + suite.addTest(new CompletionTests("testCompletionKeywordBreak5")); + suite.addTest(new CompletionTests("testCompletionKeywordBreak6")); + suite.addTest(new CompletionTests("testCompletionKeywordCase1")); + suite.addTest(new CompletionTests("testCompletionKeywordCase10")); + suite.addTest(new CompletionTests("testCompletionKeywordCase2")); + suite.addTest(new CompletionTests("testCompletionKeywordCase3")); + suite.addTest(new CompletionTests("testCompletionKeywordCase4")); + suite.addTest(new CompletionTests("testCompletionKeywordCase5")); + suite.addTest(new CompletionTests("testCompletionKeywordCase6")); + suite.addTest(new CompletionTests("testCompletionKeywordCase7")); + suite.addTest(new CompletionTests("testCompletionKeywordCase8")); + suite.addTest(new CompletionTests("testCompletionKeywordCase9")); + suite.addTest(new CompletionTests("testCompletionKeywordCatch1")); + suite.addTest(new CompletionTests("testCompletionKeywordCatch10")); + suite.addTest(new CompletionTests("testCompletionKeywordCatch2")); + suite.addTest(new CompletionTests("testCompletionKeywordCatch3")); + suite.addTest(new CompletionTests("testCompletionKeywordCatch4")); + suite.addTest(new CompletionTests("testCompletionKeywordCatch5")); + suite.addTest(new CompletionTests("testCompletionKeywordCatch6")); + suite.addTest(new CompletionTests("testCompletionKeywordCatch7")); + suite.addTest(new CompletionTests("testCompletionKeywordCatch8")); + suite.addTest(new CompletionTests("testCompletionKeywordCatch9")); + suite.addTest(new CompletionTests("testCompletionKeywordClass1")); + suite.addTest(new CompletionTests("testCompletionKeywordClass10")); + suite.addTest(new CompletionTests("testCompletionKeywordClass11")); + suite.addTest(new CompletionTests("testCompletionKeywordClass12")); + suite.addTest(new CompletionTests("testCompletionKeywordClass13")); + suite.addTest(new CompletionTests("testCompletionKeywordClass14")); + suite.addTest(new CompletionTests("testCompletionKeywordClass15")); + suite.addTest(new CompletionTests("testCompletionKeywordClass16")); + suite.addTest(new CompletionTests("testCompletionKeywordClass17")); + suite.addTest(new CompletionTests("testCompletionKeywordClass18")); + suite.addTest(new CompletionTests("testCompletionKeywordClass19")); + suite.addTest(new CompletionTests("testCompletionKeywordClass2")); + suite.addTest(new CompletionTests("testCompletionKeywordClass20")); + suite.addTest(new CompletionTests("testCompletionKeywordClass21")); + suite.addTest(new CompletionTests("testCompletionKeywordClass22")); + suite.addTest(new CompletionTests("testCompletionKeywordClass23")); + suite.addTest(new CompletionTests("testCompletionKeywordClass24")); + suite.addTest(new CompletionTests("testCompletionKeywordClass3")); + suite.addTest(new CompletionTests("testCompletionKeywordClass4")); + suite.addTest(new CompletionTests("testCompletionKeywordClass5")); + suite.addTest(new CompletionTests("testCompletionKeywordClass6")); + suite.addTest(new CompletionTests("testCompletionKeywordClass7")); + suite.addTest(new CompletionTests("testCompletionKeywordClass8")); + suite.addTest(new CompletionTests("testCompletionKeywordClass9")); + suite.addTest(new CompletionTests("testCompletionKeywordContinue1")); + suite.addTest(new CompletionTests("testCompletionKeywordContinue2")); + suite.addTest(new CompletionTests("testCompletionKeywordContinue3")); + suite.addTest(new CompletionTests("testCompletionKeywordContinue4")); + suite.addTest(new CompletionTests("testCompletionKeywordContinue5")); + suite.addTest(new CompletionTests("testCompletionKeywordDefault1")); + suite.addTest(new CompletionTests("testCompletionKeywordDefault10")); + suite.addTest(new CompletionTests("testCompletionKeywordDefault2")); + suite.addTest(new CompletionTests("testCompletionKeywordDefault3")); + suite.addTest(new CompletionTests("testCompletionKeywordDefault4")); + suite.addTest(new CompletionTests("testCompletionKeywordDefault5")); + suite.addTest(new CompletionTests("testCompletionKeywordDefault6")); + suite.addTest(new CompletionTests("testCompletionKeywordDefault7")); + suite.addTest(new CompletionTests("testCompletionKeywordDefault8")); + suite.addTest(new CompletionTests("testCompletionKeywordDefault9")); + suite.addTest(new CompletionTests("testCompletionKeywordDo1")); + suite.addTest(new CompletionTests("testCompletionKeywordDo2")); + suite.addTest(new CompletionTests("testCompletionKeywordDo3")); + suite.addTest(new CompletionTests("testCompletionKeywordDo4")); + suite.addTest(new CompletionTests("testCompletionKeywordDo5")); + suite.addTest(new CompletionTests("testCompletionKeywordDo6")); + suite.addTest(new CompletionTests("testCompletionKeywordElse1")); + suite.addTest(new CompletionTests("testCompletionKeywordElse2")); + suite.addTest(new CompletionTests("testCompletionKeywordElse3")); + suite.addTest(new CompletionTests("testCompletionKeywordElse4")); + suite.addTest(new CompletionTests("testCompletionKeywordElse5")); + suite.addTest(new CompletionTests("testCompletionKeywordElse6")); + suite.addTest(new CompletionTests("testCompletionKeywordElse7")); + suite.addTest(new CompletionTests("testCompletionKeywordElse8")); + suite.addTest(new CompletionTests("testCompletionKeywordExtends1")); + suite.addTest(new CompletionTests("testCompletionKeywordExtends10")); + suite.addTest(new CompletionTests("testCompletionKeywordExtends2")); + suite.addTest(new CompletionTests("testCompletionKeywordExtends3")); + suite.addTest(new CompletionTests("testCompletionKeywordExtends4")); + suite.addTest(new CompletionTests("testCompletionKeywordExtends5")); + suite.addTest(new CompletionTests("testCompletionKeywordExtends6")); + suite.addTest(new CompletionTests("testCompletionKeywordExtends7")); + suite.addTest(new CompletionTests("testCompletionKeywordExtends8")); + suite.addTest(new CompletionTests("testCompletionKeywordExtends9")); + suite.addTest(new CompletionTests("testCompletionKeywordFalse1")); + suite.addTest(new CompletionTests("testCompletionKeywordFalse2")); + suite.addTest(new CompletionTests("testCompletionKeywordFalse3")); + suite.addTest(new CompletionTests("testCompletionKeywordFalse4")); + suite.addTest(new CompletionTests("testCompletionKeywordFalse5")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal1")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal10")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal11")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal12")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal13")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal14")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal15")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal16")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal17")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal18")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal2")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal3")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal4")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal5")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal6")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal7")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal8")); + suite.addTest(new CompletionTests("testCompletionKeywordFinal9")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally1")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally10")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally11")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally12")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally13")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally14")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally2")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally3")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally4")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally5")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally6")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally7")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally8")); + suite.addTest(new CompletionTests("testCompletionKeywordFinally9")); + suite.addTest(new CompletionTests("testCompletionKeywordFor1")); + suite.addTest(new CompletionTests("testCompletionKeywordFor2")); + suite.addTest(new CompletionTests("testCompletionKeywordFor3")); + suite.addTest(new CompletionTests("testCompletionKeywordFor4")); + suite.addTest(new CompletionTests("testCompletionKeywordFor5")); + suite.addTest(new CompletionTests("testCompletionKeywordFor6")); + suite.addTest(new CompletionTests("testCompletionKeywordIf1")); + suite.addTest(new CompletionTests("testCompletionKeywordIf2")); + suite.addTest(new CompletionTests("testCompletionKeywordIf3")); + suite.addTest(new CompletionTests("testCompletionKeywordIf4")); + suite.addTest(new CompletionTests("testCompletionKeywordIf5")); + suite.addTest(new CompletionTests("testCompletionKeywordIf6")); + suite.addTest(new CompletionTests("testCompletionKeywordImplements1")); + suite.addTest(new CompletionTests("testCompletionKeywordImplements2")); + suite.addTest(new CompletionTests("testCompletionKeywordImplements3")); + suite.addTest(new CompletionTests("testCompletionKeywordImplements4")); + suite.addTest(new CompletionTests("testCompletionKeywordImplements5")); + suite.addTest(new CompletionTests("testCompletionKeywordImplements6")); + suite.addTest(new CompletionTests("testCompletionKeywordImport1")); + suite.addTest(new CompletionTests("testCompletionKeywordImport2")); + suite.addTest(new CompletionTests("testCompletionKeywordImport3")); + suite.addTest(new CompletionTests("testCompletionKeywordImport4")); + suite.addTest(new CompletionTests("testCompletionKeywordImport5")); + suite.addTest(new CompletionTests("testCompletionKeywordImport6")); + suite.addTest(new CompletionTests("testCompletionKeywordImport7")); + suite.addTest(new CompletionTests("testCompletionKeywordImport8")); + suite.addTest(new CompletionTests("testCompletionKeywordInstanceof1")); + suite.addTest(new CompletionTests("testCompletionKeywordInstanceof2")); + suite.addTest(new CompletionTests("testCompletionKeywordInstanceof3")); + suite.addTest(new CompletionTests("testCompletionKeywordInstanceof4")); + suite.addTest(new CompletionTests("testCompletionKeywordInstanceof5")); + suite.addTest(new CompletionTests("testCompletionKeywordInstanceof6")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface1")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface10")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface11")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface12")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface13")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface14")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface15")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface16")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface17")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface18")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface2")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface3")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface4")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface5")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface6")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface7")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface8")); + suite.addTest(new CompletionTests("testCompletionKeywordInterface9")); + suite.addTest(new CompletionTests("testCompletionKeywordNative1")); + suite.addTest(new CompletionTests("testCompletionKeywordNative2")); + suite.addTest(new CompletionTests("testCompletionKeywordNative3")); + suite.addTest(new CompletionTests("testCompletionKeywordNative4")); + suite.addTest(new CompletionTests("testCompletionKeywordNative5")); + suite.addTest(new CompletionTests("testCompletionKeywordNative6")); + suite.addTest(new CompletionTests("testCompletionKeywordNative7")); + suite.addTest(new CompletionTests("testCompletionKeywordNative8")); + suite.addTest(new CompletionTests("testCompletionKeywordNew1")); + suite.addTest(new CompletionTests("testCompletionKeywordNew10")); + suite.addTest(new CompletionTests("testCompletionKeywordNew11")); + suite.addTest(new CompletionTests("testCompletionKeywordNew12")); + suite.addTest(new CompletionTests("testCompletionKeywordNew13")); + suite.addTest(new CompletionTests("testCompletionKeywordNew14")); + suite.addTest(new CompletionTests("testCompletionKeywordNew15")); + suite.addTest(new CompletionTests("testCompletionKeywordNew16")); + suite.addTest(new CompletionTests("testCompletionKeywordNew2")); + suite.addTest(new CompletionTests("testCompletionKeywordNew3")); + suite.addTest(new CompletionTests("testCompletionKeywordNew4")); + suite.addTest(new CompletionTests("testCompletionKeywordNew5")); + suite.addTest(new CompletionTests("testCompletionKeywordNew6")); + suite.addTest(new CompletionTests("testCompletionKeywordNew7")); + suite.addTest(new CompletionTests("testCompletionKeywordNew8")); + suite.addTest(new CompletionTests("testCompletionKeywordNew9")); + suite.addTest(new CompletionTests("testCompletionKeywordNull1")); + suite.addTest(new CompletionTests("testCompletionKeywordNull2")); + suite.addTest(new CompletionTests("testCompletionKeywordNull3")); + suite.addTest(new CompletionTests("testCompletionKeywordNull4")); + suite.addTest(new CompletionTests("testCompletionKeywordPackage1")); + suite.addTest(new CompletionTests("testCompletionKeywordPackage2")); + suite.addTest(new CompletionTests("testCompletionKeywordPackage3")); + suite.addTest(new CompletionTests("testCompletionKeywordPackage4")); + suite.addTest(new CompletionTests("testCompletionKeywordPackage5")); + suite.addTest(new CompletionTests("testCompletionKeywordPackage6")); + suite.addTest(new CompletionTests("testCompletionKeywordPackage7")); + suite.addTest(new CompletionTests("testCompletionKeywordPackage8")); + suite.addTest(new CompletionTests("testCompletionKeywordPrivate1")); + suite.addTest(new CompletionTests("testCompletionKeywordPrivate10")); + suite.addTest(new CompletionTests("testCompletionKeywordPrivate2")); + suite.addTest(new CompletionTests("testCompletionKeywordPrivate3")); + suite.addTest(new CompletionTests("testCompletionKeywordPrivate4")); + suite.addTest(new CompletionTests("testCompletionKeywordPrivate5")); + suite.addTest(new CompletionTests("testCompletionKeywordPrivate6")); + suite.addTest(new CompletionTests("testCompletionKeywordPrivate7")); + suite.addTest(new CompletionTests("testCompletionKeywordPrivate8")); + suite.addTest(new CompletionTests("testCompletionKeywordPrivate9")); + suite.addTest(new CompletionTests("testCompletionKeywordProtected1")); + suite.addTest(new CompletionTests("testCompletionKeywordProtected10")); + suite.addTest(new CompletionTests("testCompletionKeywordProtected2")); + suite.addTest(new CompletionTests("testCompletionKeywordProtected3")); + suite.addTest(new CompletionTests("testCompletionKeywordProtected4")); + suite.addTest(new CompletionTests("testCompletionKeywordProtected5")); + suite.addTest(new CompletionTests("testCompletionKeywordProtected6")); + suite.addTest(new CompletionTests("testCompletionKeywordProtected7")); + suite.addTest(new CompletionTests("testCompletionKeywordProtected8")); + suite.addTest(new CompletionTests("testCompletionKeywordProtected9")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic1")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic10")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic11")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic12")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic13")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic14")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic15")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic16")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic17")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic18")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic19")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic2")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic20")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic3")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic4")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic5")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic6")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic7")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic8")); + suite.addTest(new CompletionTests("testCompletionKeywordPublic9")); + suite.addTest(new CompletionTests("testCompletionKeywordReturn1")); + suite.addTest(new CompletionTests("testCompletionKeywordReturn2")); + suite.addTest(new CompletionTests("testCompletionKeywordReturn3")); + suite.addTest(new CompletionTests("testCompletionKeywordReturn4")); + suite.addTest(new CompletionTests("testCompletionKeywordReturn5")); + suite.addTest(new CompletionTests("testCompletionKeywordReturn6")); + suite.addTest(new CompletionTests("testCompletionKeywordReturn7")); + suite.addTest(new CompletionTests("testCompletionKeywordStatic1")); + suite.addTest(new CompletionTests("testCompletionKeywordStatic10")); + suite.addTest(new CompletionTests("testCompletionKeywordStatic2")); + suite.addTest(new CompletionTests("testCompletionKeywordStatic3")); + suite.addTest(new CompletionTests("testCompletionKeywordStatic4")); + suite.addTest(new CompletionTests("testCompletionKeywordStatic5")); + suite.addTest(new CompletionTests("testCompletionKeywordStatic6")); + suite.addTest(new CompletionTests("testCompletionKeywordStatic7")); + suite.addTest(new CompletionTests("testCompletionKeywordStatic8")); + suite.addTest(new CompletionTests("testCompletionKeywordStatic9")); + suite.addTest(new CompletionTests("testCompletionKeywordStrictfp1")); + suite.addTest(new CompletionTests("testCompletionKeywordStrictfp2")); + suite.addTest(new CompletionTests("testCompletionKeywordStrictfp3")); + suite.addTest(new CompletionTests("testCompletionKeywordStrictfp4")); + suite.addTest(new CompletionTests("testCompletionKeywordStrictfp5")); + suite.addTest(new CompletionTests("testCompletionKeywordStrictfp6")); + suite.addTest(new CompletionTests("testCompletionKeywordStrictfp7")); + suite.addTest(new CompletionTests("testCompletionKeywordStrictfp8")); + suite.addTest(new CompletionTests("testCompletionKeywordSuper1")); + suite.addTest(new CompletionTests("testCompletionKeywordSuper10")); + suite.addTest(new CompletionTests("testCompletionKeywordSuper11")); + suite.addTest(new CompletionTests("testCompletionKeywordSuper12")); + suite.addTest(new CompletionTests("testCompletionKeywordSuper2")); + suite.addTest(new CompletionTests("testCompletionKeywordSuper3")); + suite.addTest(new CompletionTests("testCompletionKeywordSuper4")); + suite.addTest(new CompletionTests("testCompletionKeywordSuper5")); + suite.addTest(new CompletionTests("testCompletionKeywordSuper6")); + suite.addTest(new CompletionTests("testCompletionKeywordSuper7")); + suite.addTest(new CompletionTests("testCompletionKeywordSuper8")); + suite.addTest(new CompletionTests("testCompletionKeywordSuper9")); + suite.addTest(new CompletionTests("testCompletionKeywordSwitch1")); + suite.addTest(new CompletionTests("testCompletionKeywordSwitch2")); + suite.addTest(new CompletionTests("testCompletionKeywordSwitch3")); + suite.addTest(new CompletionTests("testCompletionKeywordSwitch4")); + suite.addTest(new CompletionTests("testCompletionKeywordSwitch5")); + suite.addTest(new CompletionTests("testCompletionKeywordSwitch6")); + suite.addTest(new CompletionTests("testCompletionKeywordSynchronized1")); + suite.addTest(new CompletionTests("testCompletionKeywordSynchronized10")); + suite.addTest(new CompletionTests("testCompletionKeywordSynchronized11")); + suite.addTest(new CompletionTests("testCompletionKeywordSynchronized12")); + suite.addTest(new CompletionTests("testCompletionKeywordSynchronized2")); + suite.addTest(new CompletionTests("testCompletionKeywordSynchronized3")); + suite.addTest(new CompletionTests("testCompletionKeywordSynchronized4")); + suite.addTest(new CompletionTests("testCompletionKeywordSynchronized5")); + suite.addTest(new CompletionTests("testCompletionKeywordSynchronized6")); + suite.addTest(new CompletionTests("testCompletionKeywordSynchronized7")); + suite.addTest(new CompletionTests("testCompletionKeywordSynchronized8")); + suite.addTest(new CompletionTests("testCompletionKeywordSynchronized9")); + suite.addTest(new CompletionTests("testCompletionKeywordThis1")); + suite.addTest(new CompletionTests("testCompletionKeywordThis10")); + suite.addTest(new CompletionTests("testCompletionKeywordThis11")); + suite.addTest(new CompletionTests("testCompletionKeywordThis12")); + suite.addTest(new CompletionTests("testCompletionKeywordThis13")); + suite.addTest(new CompletionTests("testCompletionKeywordThis14")); + suite.addTest(new CompletionTests("testCompletionKeywordThis15")); + suite.addTest(new CompletionTests("testCompletionKeywordThis2")); + suite.addTest(new CompletionTests("testCompletionKeywordThis3")); + suite.addTest(new CompletionTests("testCompletionKeywordThis4")); + suite.addTest(new CompletionTests("testCompletionKeywordThis5")); + suite.addTest(new CompletionTests("testCompletionKeywordThis6")); + suite.addTest(new CompletionTests("testCompletionKeywordThis7")); + suite.addTest(new CompletionTests("testCompletionKeywordThis8")); + suite.addTest(new CompletionTests("testCompletionKeywordThis9")); + suite.addTest(new CompletionTests("testCompletionKeywordThrow1")); + suite.addTest(new CompletionTests("testCompletionKeywordThrow2")); + suite.addTest(new CompletionTests("testCompletionKeywordThrow3")); + suite.addTest(new CompletionTests("testCompletionKeywordThrow4")); + suite.addTest(new CompletionTests("testCompletionKeywordThrow5")); + suite.addTest(new CompletionTests("testCompletionKeywordThrow6")); + suite.addTest(new CompletionTests("testCompletionKeywordThrows1")); + suite.addTest(new CompletionTests("testCompletionKeywordThrows2")); + suite.addTest(new CompletionTests("testCompletionKeywordThrows3")); + suite.addTest(new CompletionTests("testCompletionKeywordThrows4")); + suite.addTest(new CompletionTests("testCompletionKeywordThrows5")); + suite.addTest(new CompletionTests("testCompletionKeywordThrows6")); + suite.addTest(new CompletionTests("testCompletionKeywordThrows7")); + suite.addTest(new CompletionTests("testCompletionKeywordThrows8")); + suite.addTest(new CompletionTests("testCompletionKeywordTransient1")); + suite.addTest(new CompletionTests("testCompletionKeywordTransient2")); + suite.addTest(new CompletionTests("testCompletionKeywordTransient3")); + suite.addTest(new CompletionTests("testCompletionKeywordTransient4")); + suite.addTest(new CompletionTests("testCompletionKeywordTransient5")); + suite.addTest(new CompletionTests("testCompletionKeywordTransient6")); + suite.addTest(new CompletionTests("testCompletionKeywordTransient7")); + suite.addTest(new CompletionTests("testCompletionKeywordTransient8")); + suite.addTest(new CompletionTests("testCompletionKeywordTrue1")); + suite.addTest(new CompletionTests("testCompletionKeywordTrue2")); + suite.addTest(new CompletionTests("testCompletionKeywordTrue3")); + suite.addTest(new CompletionTests("testCompletionKeywordTrue4")); + suite.addTest(new CompletionTests("testCompletionKeywordTrue5")); + suite.addTest(new CompletionTests("testCompletionKeywordTrue6")); + suite.addTest(new CompletionTests("testCompletionKeywordTry1")); + suite.addTest(new CompletionTests("testCompletionKeywordTry2")); + suite.addTest(new CompletionTests("testCompletionKeywordTry3")); + suite.addTest(new CompletionTests("testCompletionKeywordTry4")); + suite.addTest(new CompletionTests("testCompletionKeywordTry5")); + suite.addTest(new CompletionTests("testCompletionKeywordTry6")); + suite.addTest(new CompletionTests("testCompletionKeywordVolatile1")); + suite.addTest(new CompletionTests("testCompletionKeywordVolatile2")); + suite.addTest(new CompletionTests("testCompletionKeywordVolatile3")); + suite.addTest(new CompletionTests("testCompletionKeywordVolatile4")); + suite.addTest(new CompletionTests("testCompletionKeywordVolatile5")); + suite.addTest(new CompletionTests("testCompletionKeywordVolatile6")); + suite.addTest(new CompletionTests("testCompletionKeywordVolatile7")); + suite.addTest(new CompletionTests("testCompletionKeywordVolatile8")); + suite.addTest(new CompletionTests("testCompletionKeywordWhile1")); + suite.addTest(new CompletionTests("testCompletionKeywordWhile10")); + suite.addTest(new CompletionTests("testCompletionKeywordWhile2")); + suite.addTest(new CompletionTests("testCompletionKeywordWhile3")); + suite.addTest(new CompletionTests("testCompletionKeywordWhile4")); + suite.addTest(new CompletionTests("testCompletionKeywordWhile5")); + suite.addTest(new CompletionTests("testCompletionKeywordWhile6")); + suite.addTest(new CompletionTests("testCompletionKeywordWhile7")); + suite.addTest(new CompletionTests("testCompletionKeywordWhile8")); + suite.addTest(new CompletionTests("testCompletionKeywordWhile9")); + suite.addTest(new CompletionTests("testCompletionLocalName")); + suite.addTest(new CompletionTests("testCompletionLocalType1")); + suite.addTest(new CompletionTests("testCompletionMemberType")); + suite.addTest(new CompletionTests("testCompletionMemberType2")); + suite.addTest(new CompletionTests("testCompletionMemberType3")); + suite.addTest(new CompletionTests("testCompletionMessageSendIsParent1")); + suite.addTest(new CompletionTests("testCompletionMessageSendIsParent2")); + suite.addTest(new CompletionTests("testCompletionMessageSendIsParent3")); + suite.addTest(new CompletionTests("testCompletionMessageSendIsParent4")); + suite.addTest(new CompletionTests("testCompletionMessageSendIsParent5")); + suite.addTest(new CompletionTests("testCompletionMessageSendIsParent6")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration10")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration11")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration12")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration13")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration14")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration15")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration16")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration17")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration2")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration3")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration4")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration5")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration6")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration7")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration8")); + suite.addTest(new CompletionTests("testCompletionMethodDeclaration9")); + suite.addTest(new CompletionTests("testCompletionMethodThrowsClause")); + suite.addTest(new CompletionTests("testCompletionMethodThrowsClause2")); + suite.addTest(new CompletionTests("testCompletionNonEmptyToken1")); + suite.addTest(new CompletionTests("testCompletionNonStaticFieldRelevance")); + suite.addTest(new CompletionTests("testCompletionNullRequestor")); + suite.addTest(new CompletionTests("testCompletionObjectsMethodWithInterfaceReceiver")); + suite.addTest(new CompletionTests("testCompletionOnClassFile")); + suite.addTest(new CompletionTests("testCompletionOnStaticMember1")); + suite.addTest(new CompletionTests("testCompletionOnStaticMember2")); + suite.addTest(new CompletionTests("testCompletionOutOfBounds")); + suite.addTest(new CompletionTests("testCompletionPackageAndClass1")); + suite.addTest(new CompletionTests("testCompletionPackageAndClass2")); + suite.addTest(new CompletionTests("testCompletionPrefixFieldName1")); + suite.addTest(new CompletionTests("testCompletionPrefixFieldName2")); + suite.addTest(new CompletionTests("testCompletionPrefixMethodName1")); + suite.addTest(new CompletionTests("testCompletionPrefixMethodName2")); + suite.addTest(new CompletionTests("testCompletionPrefixMethodName3")); + suite.addTest(new CompletionTests("testCompletionQualifiedAllocationType1")); + suite.addTest(new CompletionTests("testCompletionQualifiedExpectedType")); + suite.addTest(new CompletionTests("testCompletionRepeatedType")); + suite.addTest(new CompletionTests("testCompletionReturnInInitializer")); + suite.addTest(new CompletionTests("testCompletionReturnStatementIsParent1")); + suite.addTest(new CompletionTests("testCompletionReturnStatementIsParent2")); + suite.addTest(new CompletionTests("testCompletionSameClass")); + suite.addTest(new CompletionTests("testCompletionSameSuperClass")); + suite.addTest(new CompletionTests("testCompletionStaticMethod1")); + suite.addTest(new CompletionTests("testCompletionStaticMethodDeclaration1")); + suite.addTest(new CompletionTests("testCompletionStaticMethodDeclaration2")); + suite.addTest(new CompletionTests("testCompletionStaticMethodDeclaration3")); + suite.addTest(new CompletionTests("testCompletionStaticMethodDeclaration4")); + suite.addTest(new CompletionTests("testCompletionStaticMethodDeclaration5")); + suite.addTest(new CompletionTests("testCompletionStaticMethodDeclaration6")); + suite.addTest(new CompletionTests("testCompletionSuperType")); + suite.addTest(new CompletionTests("testCompletionSuperType2")); + suite.addTest(new CompletionTests("testCompletionSuperType3")); + suite.addTest(new CompletionTests("testCompletionSuperType4")); + suite.addTest(new CompletionTests("testCompletionSuperType5")); + suite.addTest(new CompletionTests("testCompletionSuperType6")); + suite.addTest(new CompletionTests("testCompletionSuperType7")); + suite.addTest(new CompletionTests("testCompletionSuperType8")); + suite.addTest(new CompletionTests("testCompletionThrowStatement")); + suite.addTest(new CompletionTests("testCompletionToplevelType1")); + suite.addTest(new CompletionTests("testCompletionType1")); + suite.addTest(new CompletionTests("testCompletionUnaryOperator1")); + suite.addTest(new CompletionTests("testCompletionUnaryOperator2")); + suite.addTest(new CompletionTests("testCompletionUnresolvedEnclosingType")); + suite.addTest(new CompletionTests("testCompletionUnresolvedFieldType")); + suite.addTest(new CompletionTests("testCompletionUnresolvedParameterType")); + suite.addTest(new CompletionTests("testCompletionUnresolvedReturnType")); + suite.addTest(new CompletionTests("testCompletionUnresolvedSuperclass")); + suite.addTest(new CompletionTests("testCompletionUnresolvedSuperinteface")); + suite.addTest(new CompletionTests("testCompletionVariableInitializerInInitializer1")); + suite.addTest(new CompletionTests("testCompletionVariableInitializerInInitializer2")); + suite.addTest(new CompletionTests("testCompletionVariableInitializerInInitializer3")); + suite.addTest(new CompletionTests("testCompletionVariableInitializerInInitializer4")); + suite.addTest(new CompletionTests("testCompletionVariableInitializerInMethod1")); + suite.addTest(new CompletionTests("testCompletionVariableInitializerInMethod2")); + suite.addTest(new CompletionTests("testCompletionVariableInitializerInMethod3")); + suite.addTest(new CompletionTests("testCompletionVariableInitializerInMethod4")); + suite.addTest(new CompletionTests("testCompletionVariableName1")); + suite.addTest(new CompletionTests("testCompletionVariableName10")); + suite.addTest(new CompletionTests("testCompletionVariableName11")); + suite.addTest(new CompletionTests("testCompletionVariableName12")); + suite.addTest(new CompletionTests("testCompletionVariableName13")); + suite.addTest(new CompletionTests("testCompletionVariableName14")); + suite.addTest(new CompletionTests("testCompletionVariableName14_2")); + suite.addTest(new CompletionTests("testCompletionVariableName15")); + suite.addTest(new CompletionTests("testCompletionVariableName16")); + suite.addTest(new CompletionTests("testCompletionVariableName17")); + suite.addTest(new CompletionTests("testCompletionVariableName18")); + suite.addTest(new CompletionTests("testCompletionVariableName19")); + suite.addTest(new CompletionTests("testCompletionVariableName2")); + suite.addTest(new CompletionTests("testCompletionVariableName20")); + suite.addTest(new CompletionTests("testCompletionVariableName21")); + suite.addTest(new CompletionTests("testCompletionVariableName22")); + suite.addTest(new CompletionTests("testCompletionVariableName23")); + suite.addTest(new CompletionTests("testCompletionVariableName24")); + suite.addTest(new CompletionTests("testCompletionVariableName25")); + suite.addTest(new CompletionTests("testCompletionVariableName26")); + suite.addTest(new CompletionTests("testCompletionVariableName27")); + suite.addTest(new CompletionTests("testCompletionVariableName28")); + suite.addTest(new CompletionTests("testCompletionVariableName29")); + suite.addTest(new CompletionTests("testCompletionVariableName3")); + suite.addTest(new CompletionTests("testCompletionVariableName30")); + suite.addTest(new CompletionTests("testCompletionVariableName31")); + suite.addTest(new CompletionTests("testCompletionVariableName32")); + suite.addTest(new CompletionTests("testCompletionVariableName33")); + suite.addTest(new CompletionTests("testCompletionVariableName34")); + suite.addTest(new CompletionTests("testCompletionVariableName35")); + suite.addTest(new CompletionTests("testCompletionVariableName36")); + suite.addTest(new CompletionTests("testCompletionVariableName37")); + suite.addTest(new CompletionTests("testCompletionVariableName38")); + suite.addTest(new CompletionTests("testCompletionVariableName39")); + suite.addTest(new CompletionTests("testCompletionVariableName4")); + suite.addTest(new CompletionTests("testCompletionVariableName5")); + suite.addTest(new CompletionTests("testCompletionVariableName5_2")); + suite.addTest(new CompletionTests("testCompletionVariableName6")); + suite.addTest(new CompletionTests("testCompletionVariableName6_2")); + suite.addTest(new CompletionTests("testCompletionVariableName7")); + suite.addTest(new CompletionTests("testCompletionVariableName8")); + suite.addTest(new CompletionTests("testCompletionVariableName9")); + suite.addTest(new CompletionTests("testCompletionVariableName9_2")); + suite.addTest(new CompletionTests("testCompletionVariableNameOfArray1")); + suite.addTest(new CompletionTests("testCompletionVariableNameOfArray2")); + suite.addTest(new CompletionTests("testCompletionVariableNameOfArray3")); + suite.addTest(new CompletionTests("testCompletionVariableNameOfArray4")); + suite.addTest(new CompletionTests("testCompletionVariableNameUnresolvedType")); + suite.addTest(new CompletionTests("testCompletionVisibilityCheckDisabled")); + suite.addTest(new CompletionTests("testCompletionVisibilityCheckEnabled")); + suite.addTest(new CompletionTests("testCompletionVoidMethod")); + suite.addTest(new CompletionTests("testCompletionWithBinaryFolder")); + suite.addTest(new CompletionTests("testCompletionWithProblem1")); + suite.addTest(new CompletionTests("testConstructor1")); + suite.addTest(new CompletionTests("testConstructor2")); + suite.addTest(new CompletionTests("testConstructor3")); + suite.addTest(new CompletionTests("testConstructor4")); + suite.addTest(new CompletionTests("testConstructor5")); + suite.addTest(new CompletionTests("testConstructor6")); + suite.addTest(new CompletionTests("testConstructor7")); + suite.addTest(new CompletionTests("testDeprecationCheck1")); + suite.addTest(new CompletionTests("testDeprecationCheck10")); + suite.addTest(new CompletionTests("testDeprecationCheck11")); + suite.addTest(new CompletionTests("testDeprecationCheck12")); + suite.addTest(new CompletionTests("testDeprecationCheck13")); + suite.addTest(new CompletionTests("testDeprecationCheck14")); + suite.addTest(new CompletionTests("testDeprecationCheck15")); + suite.addTest(new CompletionTests("testDeprecationCheck16")); + suite.addTest(new CompletionTests("testDeprecationCheck17")); + suite.addTest(new CompletionTests("testDeprecationCheck2")); + suite.addTest(new CompletionTests("testDeprecationCheck3")); + suite.addTest(new CompletionTests("testDeprecationCheck4")); + suite.addTest(new CompletionTests("testDeprecationCheck5")); + suite.addTest(new CompletionTests("testDeprecationCheck6")); + suite.addTest(new CompletionTests("testDeprecationCheck7")); + suite.addTest(new CompletionTests("testDeprecationCheck8")); + suite.addTest(new CompletionTests("testDeprecationCheck9")); + suite.addTest(new CompletionTests("testDuplicateLocals1")); + suite.addTest(new CompletionTests("testDuplicateLocals2")); + suite.addTest(new CompletionTests("testDuplicateLocals3")); + suite.addTest(new CompletionTests("testDuplicateLocals4")); + suite.addTest(new CompletionTests("testDuplicateLocals5")); + suite.addTest(new CompletionTests("testDuplicateLocalsType1")); + suite.addTest(new CompletionTests("testDuplicateLocalsType2")); + suite.addTest(new CompletionTests("testEvaluationContextCompletion")); + suite.addTest(new CompletionTests("testEvaluationContextCompletion2")); + suite.addTest(new CompletionTests("testEvaluationContextCompletion3")); + suite.addTest(new CompletionTests("testEvaluationContextCompletion4")); + suite.addTest(new CompletionTests("testEvaluationContextCompletion5")); + suite.addTest(new CompletionTests("testEvaluationContextCompletion6")); + suite.addTest(new CompletionTests("testFavoriteImports001")); + suite.addTest(new CompletionTests("testFavoriteImports002")); + suite.addTest(new CompletionTests("testFavoriteImports003")); + suite.addTest(new CompletionTests("testFavoriteImports004")); + suite.addTest(new CompletionTests("testFavoriteImports005")); + suite.addTest(new CompletionTests("testFavoriteImports006")); + suite.addTest(new CompletionTests("testFavoriteImports007")); + suite.addTest(new CompletionTests("testFavoriteImports009")); + suite.addTest(new CompletionTests("testFavoriteImports011")); + suite.addTest(new CompletionTests("testFavoriteImports013")); + suite.addTest(new CompletionTests("testFavoriteImports016")); + suite.addTest(new CompletionTests("testFavoriteImports017")); + suite.addTest(new CompletionTests("testFavoriteImports018")); + suite.addTest(new CompletionTests("testFavoriteImports019")); + suite.addTest(new CompletionTests("testFavoriteImports020")); + suite.addTest(new CompletionTests("testFavoriteImports022")); + suite.addTest(new CompletionTests("testFavoriteImports023")); + suite.addTest(new CompletionTests("testFavoriteImports024")); + suite.addTest(new CompletionTests("testFavoriteImports025")); + suite.addTest(new CompletionTests("testFavoriteImports026")); + suite.addTest(new CompletionTests("testFavoriteImports027")); + suite.addTest(new CompletionTests("testFavoriteImports028")); + suite.addTest(new CompletionTests("testFavoriteImports030")); + suite.addTest(new CompletionTests("testFavoriteImports031")); + suite.addTest(new CompletionTests("testFavoriteImports032")); + suite.addTest(new CompletionTests("testFavoriteImports033")); + suite.addTest(new CompletionTests("testInconsistentHierarchy1")); + suite.addTest(new CompletionTests("testLabel1")); + suite.addTest(new CompletionTests("testLabel2")); + suite.addTest(new CompletionTests("testLabel3")); + suite.addTest(new CompletionTests("testLabel4")); + suite.addTest(new CompletionTests("testLabel5")); + suite.addTest(new CompletionTests("testLabel6")); + suite.addTest(new CompletionTests("testMethod1")); + suite.addTest(new CompletionTests("testMethod2")); + suite.addTest(new CompletionTests("testMethod3")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences001")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences002")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences003")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences004")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences005")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences006")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences007")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences008")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences009")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences010")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences011")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences012")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences013")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences014")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences015")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences016")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences017")); + suite.addTest(new CompletionTests("testNameWithUnresolvedReferences018")); + suite.addTest(new CompletionTests("testParameterNames1")); + suite.addTest(new CompletionTests("testStaticMembers1")); + suite.addTest(new CompletionTests("testType1")); + suite.addTest(new CompletionTests("testType2")); + suite.addTest(new CompletionTests("testType3")); + suite.addTest(new CompletionTests("testType4")); + suite.addTest(new CompletionTests("testType5")); + suite.addTest(new CompletionTests("testType6")); + suite.addTest(new CompletionTests("testType7")); + suite.addTest(new CompletionTests("testType8")); + suite.addTest(new CompletionTests("testType9")); + suite.addTest(new CompletionTests("testType10")); + suite.addTest(new CompletionTests("testType11")); + suite.addTest(new CompletionTests("testType12")); + suite.addTest(new CompletionTests("testType13")); + suite.addTest(new CompletionTests("testType14")); + suite.addTest(new CompletionTests("testInvalidField1")); + suite.addTest(new CompletionTests("testInvalidField2")); + suite.addTest(new CompletionTests("testInvalidMethod1")); + suite.addTest(new CompletionTests("testInvalidMethod2")); + suite.addTest(new CompletionTests("testCompletionOnExtendFinalClass")); + suite.addTest(new CompletionTests("testCompletionOnExtendFinalClass2")); + suite.addTest(new CompletionTests("testCompletionOnExtendFinalClass3")); + suite.addTest(new CompletionTests("test203060a")); + suite.addTest(new CompletionTests("test203060b")); + suite.addTest(new CompletionTests("test203060c")); + suite.addTest(new CompletionTests("test203060d")); + suite.addTest(new CompletionTests("test269493")); + suite.addTest(new CompletionTests("test269493b")); + suite.addTest(new CompletionTests("test269493c")); + suite.addTest(new CompletionTests("test269493d")); + suite.addTest(new CompletionTests("test269493e")); + suite.addTest(new CompletionTests("test269493f")); + suite.addTest(new CompletionTests("test269493g")); + suite.addTest(new CompletionTests("test269493h")); + suite.addTest(new CompletionTests("test269493i")); + suite.addTest(new CompletionTests("test253008")); + suite.addTest(new CompletionTests("test253008b")); + suite.addTest(new CompletionTests("test253008c")); + suite.addTest(new CompletionTests("test253008d")); + suite.addTest(new CompletionTests("test253008e")); + suite.addTest(new CompletionTests("test253008f")); + suite.addTest(new CompletionTests("test201762")); + suite.addTest(new CompletionTests("test270437a")); + suite.addTest(new CompletionTests("test270437b")); + suite.addTest(new CompletionTests("test270437c")); + suite.addTest(new CompletionTests("test270436a")); + suite.addTest(new CompletionTests("test270436b")); + suite.addTest(new CompletionTests("test270436c")); + suite.addTest(new CompletionTests("test276526a")); + suite.addTest(new CompletionTests("test276526b")); + suite.addTest(new CompletionTests("test276526c")); + suite.addTest(new CompletionTests("test276526d")); + suite.addTest(new CompletionTests("testBug287939a")); + suite.addTest(new CompletionTests("testBug287939b")); + suite.addTest(new CompletionTests("testBug287939c")); + suite.addTest(new CompletionTests("testBug287939d")); + suite.addTest(new CompletionTests("testBug202634a")); + suite.addTest(new CompletionTests("testBug202634b")); + suite.addTest(new CompletionTests("testBug202634c")); + suite.addTest(new CompletionTests("testBug202634d")); + suite.addTest(new CompletionTests("testBug202634e")); + suite.addTest(new CompletionTests("testBug202634f")); + suite.addTest(new CompletionTests("testBug307337")); + suite.addTest(new CompletionTests("testBug292087")); + suite.addTest(new CompletionTests("testBug249704")); + suite.addTest(new CompletionTests("testBug244820")); + suite.addTest(new CompletionTests("testBug308980a")); + suite.addTest(new CompletionTests("testBug308980b")); + suite.addTest(new CompletionTests("testBug267091a")); + suite.addTest(new CompletionTests("testBug267091b")); + suite.addTest(new CompletionTests("testBug310747")); + suite.addTest(new CompletionTests("testBug261534a")); + suite.addTest(new CompletionTests("testBug261534b")); + suite.addTest(new CompletionTests("testBug310427a")); + suite.addTest(new CompletionTests("testBug310427b")); + suite.addTest(new CompletionTests("testBug195346a")); + suite.addTest(new CompletionTests("testBug195346b")); + suite.addTest(new CompletionTests("testBug304006a")); + suite.addTest(new CompletionTests("testBug304006b")); + suite.addTest(new CompletionTests("testBug304006c")); + suite.addTest(new CompletionTests("testBug304006d")); + suite.addTest(new CompletionTests("testBug304006e")); + suite.addTest(new CompletionTests("test325481")); + suite.addTest(new CompletionTests("test312603")); + suite.addTest(new CompletionTests("test328674a")); + suite.addTest(new CompletionTests("test328674b")); + suite.addTest(new CompletionTests("test325481b")); + suite.addTest(new CompletionTests("testBug332268a")); + suite.addTest(new CompletionTests("testBug332268b")); + return suite; } public CompletionTests(String name) { super(name); @@ -15656,17 +16598,19 @@ public void testCompletionVisibilityCheckEnabled() throws JavaModelException { Object visibilityCheckPreviousValue = options.get(visibilityCheckID); options.put(visibilityCheckID,"enabled"); JavaCore.setOptions(options); - CompletionTestsRequestor requestor = new CompletionTestsRequestor(); - ICompilationUnit cu= getCompilationUnit("Completion", "src", "", "CompletionVisibilityCheck.java"); - String str = cu.getSource(); - String completeBehind = "x.p"; - int cursorLocation = str.indexOf(completeBehind) + completeBehind.length(); - cu.codeComplete(cursorLocation, requestor); - - options.put(visibilityCheckID,visibilityCheckPreviousValue); - JavaCore.setOptions(options); + try { + ICompilationUnit cu= getCompilationUnit("Completion", "src", "", "CompletionVisibilityCheck.java"); + + String str = cu.getSource(); + String completeBehind = "x.p"; + int cursorLocation = str.indexOf(completeBehind) + completeBehind.length(); + cu.codeComplete(cursorLocation, requestor); + } finally { + options.put(visibilityCheckID,visibilityCheckPreviousValue); + JavaCore.setOptions(options); + } assertEquals( "should have two methods", "element:protectedFoo completion:protectedFoo() relevance:"+(R_DEFAULT + R_RESOLVED + R_INTERESTING + R_CASE + R_NON_STATIC + R_NON_RESTRICTED)+"\n" + diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/ReconcilerTests.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/ReconcilerTests.java index ffe9ca1a0..58c60b253 100644 --- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/ReconcilerTests.java +++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/ReconcilerTests.java @@ -7,6 +7,7 @@ * * Contributors: * IBM Corporation - initial API and implementation + * Stephan Herrmann - contribution for bug 337868 - [compiler][model] incomplete support for package-info.java when using SearchableEnvironment * Technical University Berlin - adapted for Object Teams *******************************************************************************/ package org.eclipse.jdt.core.tests.model; @@ -773,6 +774,40 @@ public void testAnnotations5() throws JavaModelException { annotation.discardWorkingCopy(); } } + +/* + * Bug 337868 - [compiler][model] incomplete support for package-info.java when using SearchableEnvironment + * Ensures that an annotated package-info.java doesn't confuse the reconciler. + */ +public void testAnnotations6() throws CoreException { + + createFolder("/Reconciler15/src/p1"); + + createFile("/Reconciler15/src/p1/package-info.java", "@java.lang.Deprecated package p1;"); + createFile("/Reconciler15/src/p1/C.java", + "package p1;\n" + + "public class C {\n" + + " static class Y extends C {}\n" + + "}" + ); + ICompilationUnit myWC = getCompilationUnit("/Reconciler15/src/p1/C.java").getWorkingCopy(this.wcOwner, null); + org.eclipse.jdt.core.dom.CompilationUnit unit = myWC.reconcile(AST.JLS3, true, this.wcOwner, null); + assertProblems( + "Unexpected problems", + "----------\n" + + "----------\n" + + "----------\n" + + "----------\n" + ); + assertASTNodeEquals( + "Unexpected ast", + "package p1;\n" + + "public class C {\n" + + "static class Y extends C {\n" + + " }\n" + + "}\n", + unit); +} /* * Ensures that the AST broadcasted during a reconcile operation is correct. * (case of a working copy being reconciled with changes, creating AST and no problem detection) diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/SelectionJavadocModelTests.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/SelectionJavadocModelTests.java index 0ab8eb82f..7cb2752d9 100644 --- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/SelectionJavadocModelTests.java +++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/SelectionJavadocModelTests.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2000, 2008 IBM Corporation and others. + * Copyright (c) 2000, 2011 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 @@ -1311,4 +1311,230 @@ public class SelectionJavadocModelTests extends AbstractJavaModelTests { elements ); } + // https://bugs.eclipse.org/bugs/show_bug.cgi?id=171019 + // To verify that inheritDoc tag is recognized as a valid selection and + // pressing F3 on it navigates to the overriden method with the javadoc according to spec + // as documented in org.eclipse.jdt.internal.codeassist.SelectionEngine.InheritDocVisitor + public void testBug171019() throws CoreException { + this.wcOwner = new WorkingCopyOwner() {}; + this.workingCopies = new ICompilationUnit[1]; + this.workingCopies[0] = getWorkingCopy("/Tests/b171019/X.java", + "package b171019;\n" + + "interface X {\n" + + " /**\n" + + " * Main desc of foo..\n" + + " */\n" + + " void foo(int x);\n" + + "}\n" + + "interface Y extends X {\n" + + " /**\n" + + " * {@inheritDoc}\n" + // should navigate to X.foo(int) + " */\n" + + " void foo(int x);\n\n" + + " /**\n" + + " * {@inheritDoc}\n" + // should navigate to Y.foo(String) + " */\n" + + " void foo(String s);\n" + + "}\n" + ); + IJavaElement[] elements = new IJavaElement[2]; + elements[0] = selectMethod(this.workingCopies[0], "@inheritDoc", 1); + elements[1] = selectMethod(this.workingCopies[0], "@inheritDoc", 2); + assertElementsEqual("Invalid selection(s)", + "foo(int) [in X [in [Working copy] X.java [in b171019 [in <project root> [in Tests]]]]]\n" + + "foo(String) [in Y [in [Working copy] X.java [in b171019 [in <project root> [in Tests]]]]]", + elements + ); + } + // https://bugs.eclipse.org/bugs/show_bug.cgi?id=171019 + // To verify that inheritDoc tag is recognized as a valid selection and + // pressing F3 on it navigates to the overriden method with the javadoc according to spec + // as documented in org.eclipse.jdt.internal.codeassist.SelectionEngine.InheritDocVisitor + public void testBug171019b() throws CoreException { + this.wcOwner = new WorkingCopyOwner() {}; + this.workingCopies = new ICompilationUnit[1]; + this.workingCopies[0] = getWorkingCopy("/Tests/b171019/X.java", + "package b171019;\n" + + "interface X {\n" + + " /**\n" + + " * Main desc of foo..\n" + + " */\n" + + " void foo(int x);\n" + + "}\n" + + "class X1 implements X{\n" + + " void foo(int x){}\n" + + "}\n" + + "class Y extends X1 {\n" + + " /**\n" + + " * {@inheritDoc}\n" + // should navigate to X.foo(int) + " */\n" + + " void foo(int x);\n\n" + + " /**\n" + + " * {@inheritDoc}\n" + // should navigate to Y.foo(String) + " */\n" + + " void foo(String s);\n" + + "}\n" + ); + IJavaElement[] elements = new IJavaElement[2]; + elements[0] = selectMethod(this.workingCopies[0], "@inheritDoc", 1); + elements[1] = selectMethod(this.workingCopies[0], "@inheritDoc", 2); + assertElementsEqual("Invalid selection(s)", + "foo(int) [in X [in [Working copy] X.java [in b171019 [in <project root> [in Tests]]]]]\n" + + "foo(String) [in Y [in [Working copy] X.java [in b171019 [in <project root> [in Tests]]]]]", + elements + ); + } + // https://bugs.eclipse.org/bugs/show_bug.cgi?id=171019 + // To verify that inheritDoc tag is recognized as a valid selection and + // pressing F3 on it navigates to the overriden method with the javadoc according to spec + // as documented in org.eclipse.jdt.internal.codeassist.SelectionEngine.InheritDocVisitor + public void testBug171019c() throws CoreException { + this.wcOwner = new WorkingCopyOwner() {}; + this.workingCopies = new ICompilationUnit[1]; + this.workingCopies[0] = getWorkingCopy("/Tests/b171019/X.java", + "package b171019;\n" + + "interface X1 {\n" + + " /**\n" + + " * Main desc of foo in X1..\n" + + " */\n" + + " void foo(int x);\n" + + "}\n" + + "interface X2 {\n" + + " /**\n" + + " * Main desc of foo in X2..\n" + + " */\n" + + " void foo(int x);\n" + + "}\n" + + "class X implements X1 {\n" + + " /**\n" + + " * X desc of foo..\n" + + " */\n" + + " void foo(int x){}\n" + + "}\n" + + "class Y extends X implements X2 {\n" + + " /**\n" + + " * {@inheritDoc}\n" + // should navigate to X2.foo(int) + " */\n" + + " void foo(int x);\n\n" + + "}\n" + ); + IJavaElement[] elements = new IJavaElement[1]; + elements[0] = selectMethod(this.workingCopies[0], "@inheritDoc", 1); + assertElementsEqual("Invalid selection(s)", + "foo(int) [in X2 [in [Working copy] X.java [in b171019 [in <project root> [in Tests]]]]]", + elements + ); + } + // https://bugs.eclipse.org/bugs/show_bug.cgi?id=171019 + // To verify that inheritDoc tag is recognized as a valid selection and + // pressing F3 on it navigates to the overriden method with the javadoc according to spec + // as documented in org.eclipse.jdt.internal.codeassist.SelectionEngine.InheritDocVisitor + public void testBug171019d() throws CoreException { + this.wcOwner = new WorkingCopyOwner() {}; + this.workingCopies = new ICompilationUnit[1]; + this.workingCopies[0] = getWorkingCopy("/Tests/b171019/X.java", + "package b171019;\n" + + "interface X1 {\n" + + " /**\n" + + " * Main desc of foo in X1..\n" + + " */\n" + + " void foo(int x);\n" + + "}\n" + + "interface X2 {\n" + + " void foo(int x);\n" + + "}\n" + + "class X implements X1 {\n" + + " /**\n" + + " * X desc of foo..\n" + + " */\n" + + " void foo(int x){}\n" + + "}\n" + + "class Y extends X implements X2 {\n" + + " /**\n" + + " * {@inheritDoc}\n" + // should navigate to X.foo(int) + " */\n" + + " void foo(int x);\n\n" + + "}\n" + ); + IJavaElement[] elements = new IJavaElement[1]; + elements[0] = selectMethod(this.workingCopies[0], "@inheritDoc", 1); + assertElementsEqual("Invalid selection(s)", + "foo(int) [in X [in [Working copy] X.java [in b171019 [in <project root> [in Tests]]]]]", + elements + ); + } + // https://bugs.eclipse.org/bugs/show_bug.cgi?id=171019 + // To verify that inheritDoc tag is recognized as a valid selection and + // pressing F3 on it navigates to the overriden method with the javadoc according to spec + // as documented in org.eclipse.jdt.internal.codeassist.SelectionEngine.InheritDocVisitor + public void testBug171019e() throws CoreException { + this.wcOwner = new WorkingCopyOwner() {}; + this.workingCopies = new ICompilationUnit[1]; + this.workingCopies[0] = getWorkingCopy("/Tests/b171019/X.java", + "package b171019;\n" + + "interface X {\n" + + " /**\n" + + " * Main desc of foo..\n" + + " */\n" + + " void foo(int x);\n" + + "}\n" + + "interface Y {\n" + + " void foo(String str);\n" + + "}\n" + + "abstract class Z implements X, Y {\n" + + " /**\n" + + " * {@inheritDoc}\n" + // navigates to X.foo(int) + " */\n" + + " void foo(int x) {\n" + + " }\n" + + "}" + ); + IJavaElement[] elements = new IJavaElement[1]; + elements[0] = selectMethod(this.workingCopies[0], "@inheritDoc", 1); + assertElementsEqual("Invalid selection(s)", + "foo(int) [in X [in [Working copy] X.java [in b171019 [in <project root> [in Tests]]]]]", + elements + ); + } + // https://bugs.eclipse.org/bugs/show_bug.cgi?id=171019 + // To verify that inheritDoc tag is recognized as a valid selection and + // pressing F3 on it navigates to the overriden method with the javadoc according to spec + // as documented in org.eclipse.jdt.internal.codeassist.SelectionEngine.InheritDocVisitor + // Here the inheritDoc should work when it occurs inside another valid block tag viz. + // @param, @throws, @exception, @return + public void testBug171019f() throws CoreException { + this.wcOwner = new WorkingCopyOwner() {}; + this.workingCopies = new ICompilationUnit[1]; + this.workingCopies[0] = getWorkingCopy("/Tests/b171019/X.java", + "package b171019;\n" + + "interface X {\n" + + " /**\n" + + " * Main desc of foo..\n" + + " */\n" + + " void foo(int x);\n" + + "}\n" + + "interface Y extends X {\n" + + " /**\n" + + " * {@inheritDoc}\n" + // should navigate to X.foo(int) + " * @param {@inheritDoc}\n" + // should navigate to X.foo(int) + " * @return {@inheritDoc}\n" + // should navigate to X.foo(int) + " * @throws {@inheritDoc}\n" + // should navigate to X.foo(int) + " * @exception {@inheritDoc}\n" + // should navigate to X.foo(int) + " */\n" + + " void foo(int x);\n\n" + + "}\n" + ); + IJavaElement[] elements = new IJavaElement[4]; + elements[0] = selectMethod(this.workingCopies[0], "@inheritDoc", 1); + elements[1] = selectMethod(this.workingCopies[0], "@inheritDoc", 2); + elements[2] = selectMethod(this.workingCopies[0], "@inheritDoc", 3); + elements[3] = selectMethod(this.workingCopies[0], "@inheritDoc", 4); + assertElementsEqual("Invalid selection(s)", + "foo(int) [in X [in [Working copy] X.java [in b171019 [in <project root> [in Tests]]]]]\n" + + "foo(int) [in X [in [Working copy] X.java [in b171019 [in <project root> [in Tests]]]]]\n" + + "foo(int) [in X [in [Working copy] X.java [in b171019 [in <project root> [in Tests]]]]]\n" + + "foo(int) [in X [in [Working copy] X.java [in b171019 [in <project root> [in Tests]]]]]", + elements + ); + } } diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/TypeHierarchyTests.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/TypeHierarchyTests.java index b23f07852..73da55ec0 100644 --- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/TypeHierarchyTests.java +++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/TypeHierarchyTests.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2000, 2010 IBM Corporation and others. + * Copyright (c) 2000, 2011 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 @@ -7,6 +7,7 @@ * * Contributors: * IBM Corporation - initial API and implementation + * Stephan Herrmann - contribution for bug 337868 - [compiler][model] incomplete support for package-info.java when using SearchableEnvironment *******************************************************************************/ package org.eclipse.jdt.core.tests.model; @@ -2518,4 +2519,40 @@ finally{ deleteProject("P2"); } } +// Bug 337868 - [compiler][model] incomplete support for package-info.java when using SearchableEnvironment +// Ensure that package-info doesn't cause AbortCompilation from the HierarchyResolver. +public void testPackageInfo01() throws CoreException { + try { + createJavaProject("P", new String[] {"src"}, new String[] {"JCL_LIB"}, new String[0], "bin"); + + createFolder("/P/src/p"); + createFile( + "/P/src/p/package-info.java", + "/** Doc comment*/ package p;\n" + ); + createFile( + "/P/src/p/A.java", + "package p;\n" + + "public class A {\n" + + "}\n" + ); + createFile( + "/P/src/p/C.java", + "package p;\n" + + "public class C extends A {\n" + + " void foo() {\n" + + " class Bar extends C {}\n" + + " }\n" + + "}\n" + ); + ICompilationUnit cu = getCompilationUnit("/P/src/p/C.java"); + IType type = cu.getType("C"); + IMethod method = type.getMethod("foo", new String[0]); + IType local = method.getType("Bar", 1); + ITypeHierarchy cHierarchy = type.newTypeHierarchy(null); + assertTrue("Local type should be in the hierarchy", cHierarchy.contains(local)); + } finally { + deleteProject("P"); + } +} } |