[clangd] Reland target_info_test

This commit is contained in:
Kadir Cetinkaya 2020-04-11 22:25:25 +02:00
parent 2b74755ec5
commit 101a69d71b
No known key found for this signature in database
GPG Key ID: E39E36B8D2057ED6

View File

@ -0,0 +1,35 @@
# REQUIRES: arm-registered-target
# Mock 'compile_commands.json' to contain a driver name targeting armv7.
# Afterwards check that correct target is passed into clang.
# RUN: rm -rf %t.dir && mkdir -p %t.dir
# RUN: echo '[{"directory": "%/t.dir", "command": "%/t.dir/armv7-clang -x c++ the-file.cpp -v", "file": "the-file.cpp"}]' > %t.dir/compile_commands.json
# RUN: sed -e "s|INPUT_DIR|%/t.dir|g" %s > %t.test.1
# On Windows, we need the URI in didOpen to look like "uri":"file:///C:/..."
# (with the extra slash in the front), so we add it here.
# RUN: sed -E -e "s|file://([A-Z]):/|file:///\1:/|g" %t.test.1 > %t.test
# RUN: clangd -lit-test < %t.test 2>&1 | FileCheck -strict-whitespace %t.test
{"jsonrpc":"2.0","id":0,"method":"initialize","params":{}}
---
{
"jsonrpc":"2.0",
"method":"textDocument/didOpen",
"params": {
"textDocument": {
"uri": "file://INPUT_DIR/the-file.cpp",
"languageId":"cpp",
"version":1,
"text":""
}
}
}
# Make sure we have target passed into cc1 driver, which is printed due to -v in
# the compile_commands.json
# CHECK: Target: armv7
---
{"jsonrpc":"2.0","id":10000,"method":"shutdown"}
---
{"jsonrpc":"2.0","method":"exit"}