aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--queries/java/indents.scm5
-rw-r--r--tests/indent/java/issue_2571.java6
-rw-r--r--tests/indent/java/method.java2
-rw-r--r--tests/indent/java_spec.lua23
4 files changed, 36 insertions, 0 deletions
diff --git a/queries/java/indents.scm b/queries/java/indents.scm
index 578c22334..c65f92db9 100644
--- a/queries/java/indents.scm
+++ b/queries/java/indents.scm
@@ -19,4 +19,9 @@
"]"
] @branch
+[
+ "}"
+ ")"
+] @indent_end
+
[(block_comment) (line_comment)] @ignore
diff --git a/tests/indent/java/issue_2571.java b/tests/indent/java/issue_2571.java
new file mode 100644
index 000000000..b165d236a
--- /dev/null
+++ b/tests/indent/java/issue_2571.java
@@ -0,0 +1,6 @@
+// https://github.com/nvim-treesitter/nvim-treesitter/issues/2571
+class Testo {
+ void foo() {
+ System.out.println("foo");
+ }
+}
diff --git a/tests/indent/java/method.java b/tests/indent/java/method.java
new file mode 100644
index 000000000..ecf62bd1e
--- /dev/null
+++ b/tests/indent/java/method.java
@@ -0,0 +1,2 @@
+public class Method {
+}
diff --git a/tests/indent/java_spec.lua b/tests/indent/java_spec.lua
new file mode 100644
index 000000000..052999bbd
--- /dev/null
+++ b/tests/indent/java_spec.lua
@@ -0,0 +1,23 @@
+local Runner = require("tests.indent.common").Runner
+--local XFAIL = require("tests.indent.common").XFAIL
+
+local run = Runner:new(it, "tests/indent/java", {
+ tabstop = 2,
+ shiftwidth = 2,
+ softtabstop = 0,
+ expandtab = true,
+})
+
+describe("indent Java:", function()
+ describe("whole file:", function()
+ run:whole_file(".", {
+ expected_failures = {},
+ })
+ end)
+
+ describe("new line:", function()
+ run:new_line("method.java", { on_line = 1, text = "void foo() {}", indent = 2 })
+ run:new_line("issue_2571.java", { on_line = 5, text = "void bar() {}", indent = 2 })
+ end)
+end)
+