summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/test
diff options
context:
space:
mode:
Diffstat (limited to 'clang-tools-extra/test')
-rw-r--r--clang-tools-extra/test/clangd/completion-snippets.test4
-rw-r--r--clang-tools-extra/test/clangd/initialize-params-invalid.test3
-rw-r--r--clang-tools-extra/test/clangd/initialize-params.test3
-rw-r--r--clang-tools-extra/test/clangd/insert-include.test36
4 files changed, 41 insertions, 5 deletions
diff --git a/clang-tools-extra/test/clangd/completion-snippets.test b/clang-tools-extra/test/clangd/completion-snippets.test
index 48d212f087f..1b9a24e0565 100644
--- a/clang-tools-extra/test/clangd/completion-snippets.test
+++ b/clang-tools-extra/test/clangd/completion-snippets.test
@@ -28,9 +28,7 @@
# CHECK-NEXT: "result": {
# CHECK-NEXT: "isIncomplete": {{.*}}
# CHECK-NEXT: "items": [
-# CHECK-NEXT: {
-# CHECK-NEXT: "detail": "int",
-# CHECK-NEXT: "filterText": "func_with_args",
+# CHECK: "filterText": "func_with_args",
# CHECK-NEXT: "insertText": "func_with_args(${1:int a}, ${2:int b})",
# CHECK-NEXT: "insertTextFormat": 2,
# CHECK-NEXT: "kind": 3,
diff --git a/clang-tools-extra/test/clangd/initialize-params-invalid.test b/clang-tools-extra/test/clangd/initialize-params-invalid.test
index 6d20850fe7e..1c8d4f0a015 100644
--- a/clang-tools-extra/test/clangd/initialize-params-invalid.test
+++ b/clang-tools-extra/test/clangd/initialize-params-invalid.test
@@ -24,7 +24,8 @@
# CHECK-NEXT: "documentRangeFormattingProvider": true,
# CHECK-NEXT: "executeCommandProvider": {
# CHECK-NEXT: "commands": [
-# CHECK-NEXT: "clangd.applyFix"
+# CHECK-NEXT: "clangd.applyFix",
+# CHECK-NEXT: "clangd.insertInclude"
# CHECK-NEXT: ]
# CHECK-NEXT: },
# CHECK-NEXT: "renameProvider": true,
diff --git a/clang-tools-extra/test/clangd/initialize-params.test b/clang-tools-extra/test/clangd/initialize-params.test
index e9b08d78362..03eadae871a 100644
--- a/clang-tools-extra/test/clangd/initialize-params.test
+++ b/clang-tools-extra/test/clangd/initialize-params.test
@@ -24,7 +24,8 @@
# CHECK-NEXT: "documentRangeFormattingProvider": true,
# CHECK-NEXT: "executeCommandProvider": {
# CHECK-NEXT: "commands": [
-# CHECK-NEXT: "clangd.applyFix"
+# CHECK-NEXT: "clangd.applyFix",
+# CHECK-NEXT: "clangd.insertInclude"
# CHECK-NEXT: ]
# CHECK-NEXT: },
# CHECK-NEXT: "renameProvider": true,
diff --git a/clang-tools-extra/test/clangd/insert-include.test b/clang-tools-extra/test/clangd/insert-include.test
new file mode 100644
index 00000000000..b1c39e4b862
--- /dev/null
+++ b/clang-tools-extra/test/clangd/insert-include.test
@@ -0,0 +1,36 @@
+# RUN: clangd -lit-test < %s | FileCheck -strict-whitespace %s
+# RUN: clangd -lit-test -pch-storage=memory < %s | FileCheck -strict-whitespace %s
+{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"processId":123,"rootPath":"clangd","capabilities":{},"trace":"off"}}
+---
+{"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"test:///main.cpp","languageId":"cpp","version":1,"text":"void f() {}"}}}
+---
+{"jsonrpc":"2.0","id":3,"method":"workspace/executeCommand","params":{"arguments":[{"header":"<vector>","textDocument":{"uri":"test:///main.cpp"}}],"command":"clangd.insertInclude"}}
+# CHECK: "id": 3,
+# CHECK-NEXT: "jsonrpc": "2.0",
+# CHECK-NEXT: "result": "Inserted header <vector>"
+# CHECK-NEXT: }
+# CHECK: "method": "workspace/applyEdit",
+# CHECK-NEXT: "params": {
+# CHECK-NEXT: "edit": {
+# CHECK-NEXT: "changes": {
+# CHECK-NEXT: "file:///clangd-test/main.cpp": [
+# CHECK-NEXT: {
+# CHECK-NEXT: "newText": "#include <vector>\n",
+# CHECK-NEXT: "range": {
+# CHECK-NEXT: "end": {
+# CHECK-NEXT: "character": 0,
+# CHECK-NEXT: "line": 0
+# CHECK-NEXT: },
+# CHECK-NEXT: "start": {
+# CHECK-NEXT: "character": 0,
+# CHECK-NEXT: "line": 0
+# CHECK-NEXT: }
+# CHECK-NEXT: }
+# CHECK-NEXT: }
+# CHECK-NEXT: ]
+# CHECK-NEXT: }
+# CHECK-NEXT: }
+# CHECK-NEXT: }
+# CHECK-NEXT: }
+---
+{"jsonrpc":"2.0","id":4,"method":"shutdown"}
OpenPOWER on IntegriCloud