112 lines · plain
1# RUN: clangd -log=verbose -lit-test < %s | FileCheck -strict-whitespace %s2{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"processId":123,"rootPath":"clangd","capabilities":{},"trace":"off"}}3---4{"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"test:///main.cpp","languageId":"cpp","version":1,"text":"auto i = 0;"}}}5---6{7 "jsonrpc": "2.0",8 "id": 1,9 "method": "textDocument/codeAction",10 "params": {11 "textDocument": {12 "uri": "test:///main.cpp"13 },14 "range": {15 "start": {16 "line": 0,17 "character": 018 },19 "end": {20 "line": 0,21 "character": 422 }23 },24 "context": {25 "diagnostics": []26 }27 }28}29# CHECK: "id": 1,30# CHECK-NEXT: "jsonrpc": "2.0",31# CHECK-NEXT: "result": [32# CHECK-NEXT: {33# CHECK-NEXT: "arguments": [34# CHECK-NEXT: {35# CHECK-NEXT: "file": "file://{{.*}}/clangd-test/main.cpp",36# CHECK-NEXT: "selection": {37# CHECK-NEXT: "end": {38# CHECK-NEXT: "character": 4,39# CHECK-NEXT: "line": 040# CHECK-NEXT: },41# CHECK-NEXT: "start": {42# CHECK-NEXT: "character": 0,43# CHECK-NEXT: "line": 044# CHECK-NEXT: }45# CHECK-NEXT: },46# CHECK-NEXT: "tweakID": "ExpandDeducedType"47# CHECK-NEXT: }48# CHECK-NEXT: ],49# CHECK-NEXT: "command": "clangd.applyTweak",50# CHECK-NEXT: "title": "Replace with deduced type"51# CHECK-NEXT: }52# CHECK-NEXT: ]53---54{55 "jsonrpc": "2.0",56 "id": 2,57 "method": "textDocument/codeAction",58 "params": {59 "textDocument": { "uri": "test:///main.cpp" },60 "range": {61 "start": {"line": 0, "character": 0},62 "end": {"line": 0, "character": 4}63 },64 "context": {65 "diagnostics": [],66 "only": ["quickfix"]67 }68 }69}70# CHECK: "id": 2,71# CHECK-NEXT: "jsonrpc": "2.0",72# CHECK-NEXT: "result": []73---74{75 "jsonrpc": "2.0",76 "id": 3,77 "method": "textDocument/codeAction",78 "params": {79 "textDocument": { "uri": "test:///main.cpp" },80 "range": {81 "start": {"line": 0, "character": 0},82 "end": {"line": 0, "character": 4}83 },84 "context": {85 "diagnostics": [],86 "only": ["refactor"]87 }88 }89}90# CHECK: "id": 3,91# CHECK-NEXT: "jsonrpc": "2.0",92# CHECK-NEXT: "result": [93# CHECK-NEXT: {94---95{"jsonrpc":"2.0","id":4,"method":"workspace/executeCommand","params":{"command":"clangd.applyTweak","arguments":[{"file":"test:///main.cpp","selection":{"end":{"character":4,"line":0},"start":{"character":0,"line":0}},"tweakID":"ExpandDeducedType"}]}}96# CHECK: "newText": "int",97# CHECK-NEXT: "range": {98# CHECK-NEXT: "end": {99# CHECK-NEXT: "character": 4,100# CHECK-NEXT: "line": 0101# CHECK-NEXT: },102# CHECK-NEXT: "start": {103# CHECK-NEXT: "character": 0,104# CHECK-NEXT: "line": 0105# CHECK-NEXT: }106# CHECK-NEXT: }107---108{"jsonrpc":"2.0","id":5,"method":"shutdown"}109---110{"jsonrpc":"2.0","method":"exit"}111---112