### Eclipse Workspace Patch 1.0 #P org.eclipse.jdt.core.tests.model Index: src/org/eclipse/jdt/core/tests/model/CompletionTests.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/CompletionTests.java,v retrieving revision 1.120 diff -u -r1.120 CompletionTests.java --- src/org/eclipse/jdt/core/tests/model/CompletionTests.java 29 Mar 2006 04:03:07 -0000 1.120 +++ src/org/eclipse/jdt/core/tests/model/CompletionTests.java 3 May 2006 15:44:21 -0000 @@ -18,6 +18,8 @@ import org.eclipse.jdt.core.*; import org.eclipse.jdt.internal.codeassist.CompletionEngine; import org.eclipse.jdt.core.ICompilationUnit; +import org.eclipse.jdt.core.compiler.IProblem; +import org.eclipse.jdt.core.eval.IEvaluationContext; import org.eclipse.jdt.internal.codeassist.RelevanceConstants; import junit.framework.*; @@ -12369,4 +12371,23 @@ COMPLETION_PROJECT.setOptions(options); } } +//https://bugs.eclipse.org/bugs/show_bug.cgi?id=139937 +public void testEvaluationContextCompletion() throws JavaModelException { + class EvaluationContextCompletionRequestor extends CompletionRequestor { + public boolean acceptContext; + public void acceptContext(CompletionContext context) { + this.acceptContext = context != null; + } + public void accept(CompletionProposal proposal) { + // Do nothing + } + } + String start = ""; + IJavaProject javaProject = getJavaProject("Completion"); + IEvaluationContext context = javaProject.newEvaluationContext(); + EvaluationContextCompletionRequestor rc = new EvaluationContextCompletionRequestor(); + context.codeComplete(start, start.length(), rc); + + assertTrue("acceptContext() method isn't call", rc.acceptContext); +} } #P org.eclipse.jdt.core Index: eval/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/eval/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper.java,v retrieving revision 1.54 diff -u -r1.54 CodeSnippetToCuMapper.java --- eval/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper.java 29 Mar 2006 02:57:52 -0000 1.54 +++ eval/org/eclipse/jdt/internal/eval/CodeSnippetToCuMapper.java 3 May 2006 15:44:23 -0000 @@ -10,6 +10,7 @@ *******************************************************************************/ package org.eclipse.jdt.internal.eval; +import org.eclipse.jdt.core.CompletionContext; import org.eclipse.jdt.core.CompletionProposal; import org.eclipse.jdt.core.CompletionRequestor; import org.eclipse.jdt.core.Flags; @@ -188,6 +189,10 @@ problem.setSourceLineNumber(problem.getSourceLineNumber() - CodeSnippetToCuMapper.this.lineNumberOffset); originalRequestor.completionFailure(problem); } + + public void acceptContext(CompletionContext context) { + originalRequestor.acceptContext(context); + } }; } public char[] getCUSource(String lineSeparator) {