mirror of
https://git.proxmox.com/git/llvm-toolchain
synced 2025-06-28 11:04:36 +00:00
clangd with a cmake test
This commit is contained in:
parent
943e638261
commit
1b55b27aee
48
debian/qualify-clang.sh
vendored
48
debian/qualify-clang.sh
vendored
@ -118,6 +118,48 @@ if ! grep -q '"insertText": "func_with_args(${1:int a}, ${2:int b})",' foo.log;
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
echo 'namespace mozilla {
|
||||||
|
namespace dom {
|
||||||
|
void foo();
|
||||||
|
|
||||||
|
int fonction_avec_args(int a, float b);
|
||||||
|
int main() {
|
||||||
|
fonction_avec_args
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
' > foo.cpp
|
||||||
|
content=$(sed ':a;N;$!ba;s/\n/\\n/g' foo.cpp)
|
||||||
|
echo '{
|
||||||
|
"jsonrpc": "2.0",
|
||||||
|
"id": 0,
|
||||||
|
"method": "initialize",
|
||||||
|
"params": {
|
||||||
|
"processId": 123,
|
||||||
|
"rootPath": "clangd-10",
|
||||||
|
"capabilities": {
|
||||||
|
"textDocument": {
|
||||||
|
"completion": {
|
||||||
|
"completionItem": {
|
||||||
|
"snippetSupport": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"trace": "off"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
---
|
||||||
|
{"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"file:///'$(pwd)'/cmaketest/foo.cpp","languageId":"cpp","version":1,"text":"'$content'"}}}
|
||||||
|
---
|
||||||
|
{"jsonrpc":"2.0","id":1,"method":"textDocument/completion","params":{"textDocument":{"uri":"file:///'$(pwd)'/cmaketest/foo.cpp"},"position":{"line":6,"character":18}}}
|
||||||
|
---
|
||||||
|
{"jsonrpc":"2.0","id":4,"method":"shutdown"}
|
||||||
|
---
|
||||||
|
{"jsonrpc":"2.0","method":"exit"}
|
||||||
|
' > a.json
|
||||||
|
|
||||||
rm -rf cmaketest && mkdir cmaketest
|
rm -rf cmaketest && mkdir cmaketest
|
||||||
cat > cmaketest/CMakeLists.txt <<EOF
|
cat > cmaketest/CMakeLists.txt <<EOF
|
||||||
cmake_minimum_required(VERSION 2.8.12)
|
cmake_minimum_required(VERSION 2.8.12)
|
||||||
@ -134,7 +176,7 @@ cd cmaketest/standard
|
|||||||
CXX=clang-$VERSION cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .. > /dev/null
|
CXX=clang-$VERSION cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .. > /dev/null
|
||||||
# TODO this test is useless as it doesn't leverage foo.cpp or the compiledb
|
# TODO this test is useless as it doesn't leverage foo.cpp or the compiledb
|
||||||
clangd-$VERSION -lit-test -pch-storage=memory < a.json &> foo.log
|
clangd-$VERSION -lit-test -pch-storage=memory < a.json &> foo.log
|
||||||
if ! grep -q '"insertText": "func_with_args(${1:int a}, ${2:int b})",' foo.log; then
|
if ! grep -q '"insertText": "fonction_avec_args(${1:int a}, ${2:float b})",' foo.log; then
|
||||||
echo "clangd didn't export what we were expecting"
|
echo "clangd didn't export what we were expecting"
|
||||||
cat foo.log
|
cat foo.log
|
||||||
exit 1
|
exit 1
|
||||||
@ -143,10 +185,6 @@ cd -
|
|||||||
rm -rf cmaketest
|
rm -rf cmaketest
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
echo "Testing clang-$VERSION ..."
|
echo "Testing clang-$VERSION ..."
|
||||||
|
|
||||||
rm -f foo.log
|
rm -f foo.log
|
||||||
|
Loading…
Reference in New Issue
Block a user