brintos

brintos / llvm-project-archived public Read only

0
0
Text · 6.5 KiB · 69e7773 Raw
177 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 = 42 : f32\n// -----\nfunc.func @foo(%arg: i32) -> i64 {\nreturn %arg : i64\n}\n"9}}}10// -----11{"jsonrpc":"2.0","id":1,"method":"textDocument/codeAction","params":{12  "textDocument":{13    "uri":"file:///foo.mlir"14  },15  "range":{16    "start":{"line":0,"character":8}, "end":{"line":0,"character":10}17  },18  "context":{19    "diagnostics":[{20      "range":{"start":{"line":0,"character":8}, "end":{"line":0,"character":10}},21      "message":"unexpected decimal integer literal for a floating point value",22      "severity":1,23      "relatedInformation":[{24        "message":"add a trailing dot to make the literal a float",25        "location":{26          "uri":"file:///foo.mlir",27          "range":{"start":{"line":0,"character":8}, "end":{"line":0,"character":10}}28        }29      }],30      "source":"mlir"31    }],32    "only":["quickfix"],33    "triggerKind":134  }35}}36// CHECK-LABEL: "id": 137// CHECK-NEXT:  "jsonrpc": "2.0",38// CHECK-NEXT:  "result": [39// CHECK-NEXT:    {40// CHECK-NEXT:      "diagnostics": [41// CHECK-NEXT:        {42// CHECK-NEXT:          "message": "unexpected decimal integer literal for a floating point value",43// CHECK-NEXT:          "range": {44// CHECK-NEXT:            "end": {45// CHECK-NEXT:              "character": 10,46// CHECK-NEXT:              "line": 047// CHECK-NEXT:            },48// CHECK-NEXT:            "start": {49// CHECK-NEXT:              "character": 8,50// CHECK-NEXT:              "line": 051// CHECK-NEXT:            }52// CHECK-NEXT:          },53// CHECK-NEXT:          "relatedInformation": [54// CHECK-NEXT:            {55// CHECK-NEXT:              "location": {56// CHECK-NEXT:                "range": {57// CHECK-NEXT:                  "end": {58// CHECK-NEXT:                    "character": 10,59// CHECK-NEXT:                    "line": 060// CHECK-NEXT:                  },61// CHECK-NEXT:                  "start": {62// CHECK-NEXT:                    "character": 8,63// CHECK-NEXT:                    "line": 064// CHECK-NEXT:                  }65// CHECK-NEXT:                },66// CHECK-NEXT:                "uri": "file:///foo.mlir"67// CHECK-NEXT:              },68// CHECK-NEXT:              "message": "add a trailing dot to make the literal a float"69// CHECK-NEXT:            }70// CHECK-NEXT:          ],71// CHECK-NEXT:          "severity": 1,72// CHECK-NEXT:          "source": "mlir"73// CHECK-NEXT:        }74// CHECK-NEXT:      ],75// CHECK-NEXT:      "edit": {76// CHECK-NEXT:        "changes": {77// CHECK-NEXT:          "file:///foo.mlir": [78// CHECK-NEXT:            {79// CHECK-LITERAL:             "newText": "// expected-error @below {{unexpected decimal integer literal for a floating point value}}\n"80// CHECK:                     "range": {81// CHECK-NEXT:                "end": {82// CHECK-NEXT:                  "character": 0,83// CHECK-NEXT:                  "line": 084// CHECK-NEXT:                },85// CHECK-NEXT:                "start": {86// CHECK-NEXT:                  "character": 0,87// CHECK-NEXT:                  "line": 088// CHECK-NEXT:                }89// CHECK-NEXT:              }90// CHECK-NEXT:            },91// CHECK-NEXT:            {92// CHECK-NEXT-LITERAL:      "newText": "// expected-note @below {{add a trailing dot to make the literal a float}}\n",93// CHECK:                   "range": {94// CHECK-NEXT:                "end": {95// CHECK-NEXT:                  "character": 0,96// CHECK-NEXT:                  "line": 097// CHECK-NEXT:                },98// CHECK-NEXT:                "start": {99// CHECK-NEXT:                  "character": 0,100// CHECK-NEXT:                  "line": 0101// CHECK-NEXT:                }102// CHECK-NEXT:              }103// CHECK-NEXT:            }104// CHECK-NEXT:          ]105// CHECK-NEXT:        }106// CHECK-NEXT:      },107// CHECK-NEXT:      "kind": "quickfix",108// CHECK-NEXT:      "title": "Add expected-* diagnostic checks"109// CHECK-NEXT:    }110// CHECK-NEXT:  ]111// -----112{"jsonrpc":"2.0","id":2,"method":"textDocument/codeAction","params":{113  "textDocument":{"uri":"file:///foo.mlir"},114  "range":{"start":{"line":3,"character":9},"end":{"line":3,"character":13}},115  "context":{116    "diagnostics":[{117      "range":{"start":{"line":3,"character":9},"end":{"line":3,"character":13}},118      "message":"use of value '%arg' expects different type than prior uses: 'i64' vs 'i32'",119      "severity":1,120      "relatedInformation":[{121        "message":"prior use here",122        "location":{123          "uri":"file:///foo.mlir",124          "range":{"start":{"line":2,"character":15},"end":{"line":2,"character":19}}125        }126      }],127      "source":"mlir"128    }],129    "only":["quickfix"],130    "triggerKind":1131  }132}}133// CHECK-LABEL: "id": 2134// CHECK-NEXT:  "jsonrpc": "2.0",135// CHECK-NEXT:  "result": [136// CHECK-NEXT:     {137// CHECK:            "edit": {138// CHECK-NEXT:       "changes": {139// CHECK-NEXT:         "file:///foo.mlir": [140// CHECK-NEXT:           {141// CHECK-NEXT-LITERAL:     "newText": "// expected-error @below {{use of value '%arg' expects different type than prior uses: 'i64' vs 'i32'}}\n",142// CHECK:                  "range": {143// CHECK-NEXT:               "end": {144// CHECK-NEXT:                 "character": 0,145// CHECK-NEXT:                 "line": 3146// CHECK-NEXT:               },147// CHECK-NEXT:               "start": {148// CHECK-NEXT:                 "character": 0,149// CHECK-NEXT:                 "line": 3150// CHECK-NEXT:               }151// CHECK-NEXT:             }152// CHECK-NEXT:           },153// CHECK-NEXT:           {154// CHECK-NEXT-LITERAL:     "newText": "// expected-note @below {{prior use here}}\n",155// CHECK:                  "range": {156// CHECK-NEXT:               "end": {157// CHECK-NEXT:                 "character": 0,158// CHECK-NEXT:                 "line": 2159// CHECK-NEXT:               },160// CHECK-NEXT:               "start": {161// CHECK-NEXT:                 "character": 0,162// CHECK-NEXT:                 "line": 2163// CHECK-NEXT:               }164// CHECK-NEXT:             }165// CHECK-NEXT:           }166// CHECK-NEXT:         ]167// CHECK-NEXT:       }168// CHECK-NEXT:     },169// CHECK-NEXT:     "kind": "quickfix",170// CHECK-NEXT:     "title": "Add expected-* diagnostic checks"171// CHECK-NEXT:   }172// CHECK-NEXT: ]173// -----174{"jsonrpc":"2.0","id":10,"method":"shutdown"}175// -----176{"jsonrpc":"2.0","method":"exit"}177