This is specified in the spec, but we just never really needed it. This allows for users of the LSP libraries to inspect information about the client that is connected to the server. Differential Revision: https://reviews.llvm.org/D155566
37 lines
1.4 KiB
Text
37 lines
1.4 KiB
Text
// RUN: mlir-lsp-server -lit-test < %s | FileCheck -strict-whitespace %s
|
|
// Test initialize request parameters with rootUri
|
|
{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"processId":123,"rootUri":"test:///workspace","capabilities":{},"clientInfo":{"name": "test", "version": "1.2.3"},"trace":"off"}}
|
|
// CHECK: "id": 0,
|
|
// CHECK-NEXT: "jsonrpc": "2.0",
|
|
// CHECK-NEXT: "result": {
|
|
// CHECK-NEXT: "capabilities": {
|
|
// CHECK-NEXT: "codeActionProvider": true,
|
|
// CHECK-NEXT: "completionProvider": {
|
|
// CHECK-NEXT: "allCommitCharacters": [
|
|
// CHECK: ],
|
|
// CHECK-NEXT: "resolveProvider": false,
|
|
// CHECK-NEXT: "triggerCharacters": [
|
|
// CHECK: ]
|
|
// CHECK-NEXT: },
|
|
// CHECK-NEXT: "definitionProvider": true,
|
|
// CHECK-NEXT: "documentSymbolProvider": false,
|
|
// CHECK-NEXT: "hoverProvider": true,
|
|
// CHECK-NEXT: "referencesProvider": true,
|
|
// CHECK-NEXT: "textDocumentSync": {
|
|
// CHECK-NEXT: "change": 1,
|
|
// CHECK-NEXT: "openClose": true,
|
|
// CHECK-NEXT: "save": true
|
|
// CHECK-NEXT: }
|
|
// CHECK-NEXT: },
|
|
// CHECK-NEXT: "serverInfo": {
|
|
// CHECK-NEXT: "name": "mlir-lsp-server",
|
|
// CHECK-NEXT: "version": "{{.*}}"
|
|
// CHECK-NEXT: }
|
|
// CHECK-NEXT: }
|
|
// -----
|
|
{"jsonrpc":"2.0","id":3,"method":"shutdown"}
|
|
// CHECK: "id": 3,
|
|
// CHECK-NEXT: "jsonrpc": "2.0",
|
|
// CHECK-NEXT: "result": null
|
|
// -----
|
|
{"jsonrpc":"2.0","method":"exit"}
|