Skip to content

Commit

Permalink
Improve fix
Browse files Browse the repository at this point in the history
- add more tests
- update target to include latest jdt.core array completion fixes.
  • Loading branch information
gayanper committed May 13, 2023
1 parent 89b76aa commit 9122909
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 2 deletions.
2 changes: 1 addition & 1 deletion org.eclipse.jdt.ls.target/org.eclipse.jdt.ls.tp.target
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
<unit id="org.eclipse.jdt.source.feature.group" version="0.0.0"/>
<unit id="org.eclipse.sdk.feature.group" version="0.0.0"/>
<unit id="org.mockito.mockito-core" version="0.0.0"/>
<repository location="https://download.eclipse.org/eclipse/updates/4.28-I-builds/I20230416-0550/"/>
<repository location="https://download.eclipse.org/eclipse/updates/4.28-I-builds/I20230511-1800/"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.xtext.xbase.lib" version="0.0.0"/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3546,7 +3546,7 @@ void f() {
}

@Test
public void testCompletion_forArrayTypeReceivers() throws Exception {
public void testCompletion_forNonPrimitiveArrayTypeReceivers() throws Exception {
ICompilationUnit unit = getWorkingCopy("src/java/Arr.java", """
public class Arr {
void foo() {
Expand All @@ -3561,6 +3561,38 @@ void foo() {
assertEquals("Array type completion Label", "String[] - java.lang", completionItem.getLabel());
}

@Test
public void testCompletion_forPrimitiveArrayTypeReceivers() throws Exception {
ICompilationUnit unit = getWorkingCopy("src/java/Arr.java", """
public class Arr {
void foo() {
int[] ages = new i
}
}
""");

CompletionList list = requestCompletions(unit, "new ");
CompletionItem completionItem = list.getItems().get(0);
assertEquals("Array type completion EditText", "int[]", completionItem.getInsertText());
assertEquals("Array type completion Label", "int[]", completionItem.getLabel());
}

@Test
public void testCompletion_forEnclosingTypeArrayTypeReceivers() throws Exception {
ICompilationUnit unit = getWorkingCopy("src/java/Arr.java", """
public class Arr {
void foo() {
Arr[] ages = new A
}
}
""");

CompletionList list = requestCompletions(unit, "new ");
CompletionItem completionItem = list.getItems().get(0);
assertEquals("Array type completion EditText", "Arr[]", completionItem.getInsertText());
assertEquals("Array type completion Label", "Arr[] - java", completionItem.getLabel());
}

private CompletionList requestCompletions(ICompilationUnit unit, String completeBehind) throws JavaModelException {
return requestCompletions(unit, completeBehind, 0);
}
Expand Down

0 comments on commit 9122909

Please sign in to comment.