diff options
Diffstat (limited to 'clangd/test/background-index.test')
-rw-r--r-- | clangd/test/background-index.test | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/clangd/test/background-index.test b/clangd/test/background-index.test new file mode 100644 index 00000000..1d11736d --- /dev/null +++ b/clangd/test/background-index.test @@ -0,0 +1,20 @@ +# We need to splice paths into file:// URIs for this test. +# UNSUPPORTED: win32 + +# Use a copy of inputs, as we'll mutate it (as will the background index). +# RUN: rm -rf %t +# RUN: cp -r %S/Inputs/background-index %t +# Need to embed the correct temp path in the actual JSON-RPC requests. +# RUN: sed -i -e "s|DIRECTORY|%t|" %t/* + +# We're editing bar.cpp, which includes foo.h. +# foo() is declared in foo.h and defined in foo.cpp. +# The background index should allow us to go-to-definition on foo(). +# RUN: clangd -background-index -background-index-rebuild-period=0 -lit-test < %t/definition.jsonrpc | FileCheck %t/definition.jsonrpc + +# Test that the index is writing files in the expected location. +# RUN: ls %t/.clangd/index/foo.cpp.*.idx + +# Test the index is read from disk: delete code and restart clangd. +# RUN: rm %t/foo.cpp +# RUN: clangd -background-index -lit-test < %t/definition.jsonrpc | FileCheck %t/definition.jsonrpc |