diff options
author | George Fraser <george@fivetran.com> | 2018-05-20 17:47:27 -0700 |
---|---|---|
committer | George Fraser <george@fivetran.com> | 2018-05-20 17:47:27 -0700 |
commit | b8607ad8864e59a82ed73a02f6e4c90cb9d37151 (patch) | |
tree | bde7ff6bcb4a0d5b7629a74a13816d4c114af8de /src/test | |
parent | a7548a86e0d0770eb0156d1596f38e5be8c84ab8 (diff) | |
download | java-language-server-b8607ad8864e59a82ed73a02f6e4c90cb9d37151.zip |
List scope identifiers
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/java/org/javacs/JavaPresentationCompilerTest.java | 33 | ||||
-rw-r--r-- | src/test/resources/CompleteIdentifiers.java | 16 |
2 files changed, 41 insertions, 8 deletions
diff --git a/src/test/java/org/javacs/JavaPresentationCompilerTest.java b/src/test/java/org/javacs/JavaPresentationCompilerTest.java index ee468a4..4b1e4b0 100644 --- a/src/test/java/org/javacs/JavaPresentationCompilerTest.java +++ b/src/test/java/org/javacs/JavaPresentationCompilerTest.java @@ -41,6 +41,14 @@ public class JavaPresentationCompilerTest { assertThat(found.getSimpleName(), hasToString(containsString("println"))); } + private List<String> localElements(Scope s) { + List<String> result = new ArrayList<>(); + for (Element e : s.getLocalElements()) { + result.add(e.getSimpleName().toString()); + } + return result; + } + @Test public void buildUpScope() { String contents = contents("/BuildUpScope.java"); @@ -52,14 +60,6 @@ public class JavaPresentationCompilerTest { assertThat(localElements(c), containsInAnyOrder("super", "this", "a", "b", "c")); } - private List<String> localElements(Scope s) { - List<String> result = new ArrayList<>(); - for (Element e : s.getLocalElements()) { - result.add(e.getSimpleName().toString()); - } - return result; - } - @Test public void pruneMethods() { Pruner pruner = @@ -68,4 +68,21 @@ public class JavaPresentationCompilerTest { String expected = contents("/PruneMethods_erased.java"); assertThat(pruner.contents(), equalToIgnoringWhiteSpace(expected)); } + + @Test + public void identifiers() { + List<Element> found = + compiler.identifiers( + URI.create("/CompleteIdentifiers.java"), + contents("/CompleteIdentifiers.java"), + 13, + 21); + List<String> names = + found.stream().map(e -> e.getSimpleName().toString()).collect(Collectors.toList()); + assertThat(names, hasItem("completeLocal")); + assertThat(names, hasItem("completeParam")); + assertThat(names, hasItem("super")); + assertThat(names, hasItem("this")); + assertThat(names, hasItem("CompleteIdentifiers")); + } } diff --git a/src/test/resources/CompleteIdentifiers.java b/src/test/resources/CompleteIdentifiers.java new file mode 100644 index 0000000..8ba5e39 --- /dev/null +++ b/src/test/resources/CompleteIdentifiers.java @@ -0,0 +1,16 @@ +class CompleteIdentifiers { + static int completeOuterStatic; + int completeOuterField; + + class CompleteInnerClass { + int completeInnerField; + + void completeOtherMethod() { + } + + void test(int completeParam) { + int completeLocal = 1; + complete + } + } +}
\ No newline at end of file |