xref: /llvm-project/clang-tools-extra/clangd/test/remote-index/pipeline.test (revision 34593ae9982ad267639893ed4ce41242f9493056)
1# RUN: rm -rf %t
2# RUN: clangd-indexer %S/Inputs/Source.cpp > %t.idx
3# RUN: %python %S/pipeline_helper.py --input-file-name=%s --project-root=%S --index-file=%t.idx | FileCheck %s
4# REQUIRES: clangd-remote-index
5
6#      CHECK:  "uptime_seconds": "{{.*}}",
7# CHECK-NEXT:  "index_age_seconds": "{{.*}}",
8# CHECK-NEXT:  "index_commit_hash": "{{.*}}",
9# CHECK-NEXT:  "index_link": "{{.*}}"
10
11{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"processId":123,"rootPath":"clangd","capabilities":{},"trace":"off"}}
12#      CHECK:  "id": 0,
13# CHECK-NEXT:  "jsonrpc": "2.0",
14---
15{"jsonrpc":"2.0","id":1,"method":"workspace/symbol","params":{"query":"Character"}}
16#      CHECK:  "id": 1,
17# CHECK-NEXT:  "jsonrpc": "2.0",
18# CHECK-NEXT:    "result": [
19# CHECK-NEXT:      {
20# CHECK-NEXT:        "containerName": "clang::clangd::remote",
21# CHECK-NEXT:        "kind": 13,
22# CHECK-NEXT:        "location": {
23# CHECK-NEXT:          "range": {
24# CHECK-NEXT:            "end": {
25# CHECK-NEXT:              "character": {{.*}},
26# CHECK-NEXT:              "line": {{.*}}
27# CHECK-NEXT:            },
28# CHECK-NEXT:            "start": {
29# CHECK-NEXT:              "character": {{.*}},
30# CHECK-NEXT:              "line": {{.*}}
31# CHECK-NEXT:            }
32# CHECK-NEXT:          },
33# CHECK-NEXT:          "uri": "file://{{.*}}/Header.h"
34# CHECK-NEXT:        },
35# CHECK-NEXT:        "name": "Character",
36# CHECK-NEXT:        "score": {{.*}}
37# CHECK-NEXT:      }
38# CHECK-NEXT:    ]
39# CHECK-NEXT:}
40---
41{"jsonrpc":"2.0","id":4,"method":"shutdown"}
42---
43{"jsonrpc":"2.0","method":"exit"}
44---
45