119 lines · plain
1// RUN: mlir-lsp-server -lit-test < %s | FileCheck -strict-whitespace %s2{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"processId":123,"rootPath":"mlir","capabilities":{},"trace":"off"}}3// -----4{"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{5 "uri":"test:///foo.mlir",6 "languageId":"mlir",7 "version":1,8 "text":"#attr = 1 : index\n!type = index\nfunc.func @foo(%arg0: !type) -> i1 attributes {attr = #attr} {\n%value = arith.constant true loc(#loc)\nreturn %value : i1\n}\n#loc = loc(\"foo.mlir\":1:2)"9}}}10// -----11{"jsonrpc":"2.0","id":1,"method":"textDocument/definition","params":{12 "textDocument":{"uri":"test:///foo.mlir"},13 "position":{"line":4,"character":12}14}}15// CHECK: "id": 116// CHECK-NEXT: "jsonrpc": "2.0",17// CHECK-NEXT: "result": [18// CHECK-NEXT: {19// CHECK-NEXT: "range": {20// CHECK-NEXT: "end": {21// CHECK-NEXT: "character": 6,22// CHECK-NEXT: "line": 323// CHECK-NEXT: },24// CHECK-NEXT: "start": {25// CHECK-NEXT: "character": 0,26// CHECK-NEXT: "line": 327// CHECK-NEXT: }28// CHECK-NEXT: },29// CHECK-NEXT: "uri": "{{.*}}/foo.mlir"30// CHECK-NEXT: }31// -----32{"jsonrpc":"2.0","id":2,"method":"textDocument/definition","params":{33 "textDocument":{"uri":"test:///foo.mlir"},34 "position":{"line":2,"character":12}35}}36// CHECK: "id": 237// CHECK-NEXT: "jsonrpc": "2.0",38// CHECK-NEXT: "result": [39// CHECK-NEXT: {40// CHECK-NEXT: "range": {41// CHECK-NEXT: "end": {42// CHECK-NEXT: "character": 9,43// CHECK-NEXT: "line": 244// CHECK-NEXT: },45// CHECK-NEXT: "start": {46// CHECK-NEXT: "character": 0,47// CHECK-NEXT: "line": 248// CHECK-NEXT: }49// CHECK-NEXT: },50// CHECK-NEXT: "uri": "{{.*}}/foo.mlir"51// CHECK-NEXT: }52// -----53{"jsonrpc":"2.0","id":2,"method":"textDocument/definition","params":{54 "textDocument":{"uri":"test:///foo.mlir"},55 "position":{"line":2,"character":25}56}}57// CHECK: "id": 258// CHECK-NEXT: "jsonrpc": "2.0",59// CHECK-NEXT: "result": [60// CHECK-NEXT: {61// CHECK-NEXT: "range": {62// CHECK-NEXT: "end": {63// CHECK-NEXT: "character": 5,64// CHECK-NEXT: "line": 165// CHECK-NEXT: },66// CHECK-NEXT: "start": {67// CHECK-NEXT: "character": 0,68// CHECK-NEXT: "line": 169// CHECK-NEXT: }70// CHECK-NEXT: },71// CHECK-NEXT: "uri": "{{.*}}/foo.mlir"72// CHECK-NEXT: }73// -----74{"jsonrpc":"2.0","id":2,"method":"textDocument/definition","params":{75 "textDocument":{"uri":"test:///foo.mlir"},76 "position":{"line":2,"character":57}77}}78// CHECK: "id": 279// CHECK-NEXT: "jsonrpc": "2.0",80// CHECK-NEXT: "result": [81// CHECK-NEXT: {82// CHECK-NEXT: "range": {83// CHECK-NEXT: "end": {84// CHECK-NEXT: "character": 5,85// CHECK-NEXT: "line": 086// CHECK-NEXT: },87// CHECK-NEXT: "start": {88// CHECK-NEXT: "character": 0,89// CHECK-NEXT: "line": 090// CHECK-NEXT: }91// CHECK-NEXT: },92// CHECK-NEXT: "uri": "{{.*}}/foo.mlir"93// CHECK-NEXT: }94// -----95{"jsonrpc":"2.0","id":2,"method":"textDocument/definition","params":{96 "textDocument":{"uri":"test:///foo.mlir"},97 "position":{"line":3,"character":37}98}}99// CHECK: "id": 2100// CHECK-NEXT: "jsonrpc": "2.0",101// CHECK-NEXT: "result": [102// CHECK-NEXT: {103// CHECK-NEXT: "range": {104// CHECK-NEXT: "end": {105// CHECK-NEXT: "character": 4,106// CHECK-NEXT: "line": 6107// CHECK-NEXT: },108// CHECK-NEXT: "start": {109// CHECK-NEXT: "character": 0,110// CHECK-NEXT: "line": 6111// CHECK-NEXT: }112// CHECK-NEXT: },113// CHECK-NEXT: "uri": "{{.*}}/foo.mlir"114// CHECK-NEXT: }115// -----116{"jsonrpc":"2.0","id":3,"method":"shutdown"}117// -----118{"jsonrpc":"2.0","method":"exit"}119