From cb22a55318b44764500cae1b80773cfc8dc46b71 Mon Sep 17 00:00:00 2001 From: Yegappan Lakshmanan Date: Fri, 11 Nov 2022 07:33:35 -0800 Subject: [PATCH] Stop running the tests if clangd is not ready --- test/unit_tests.vim | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/test/unit_tests.vim b/test/unit_tests.vim index 8e7f72a..9f4593b 100644 --- a/test/unit_tests.vim +++ b/test/unit_tests.vim @@ -25,6 +25,7 @@ var lspServers = [{ args: ['--background-index', '--clang-tidy'] }] call LspAddServer(lspServers) +echomsg system($'{lspServers[0].path} --version') g:LSPTest = true @@ -895,11 +896,8 @@ def Test_LspDiagsUpdated_Autocmd() assert_equal(3, g:LspAutoCmd) enddef -def LspRunTests() - :set nomore - :set debug=beep - delete('results.txt') - +# Start the C language server. Returns true on success and false on failure. +def StartLangServer(): bool # Edit a dummy C file to start the LSP server :edit Xtest.c # Wait for the LSP server to become ready (max 10 seconds) @@ -908,8 +906,22 @@ def LspRunTests() :sleep 100m maxcount -= 1 endwhile + var serverStatus: bool = g:LspServerReady() :%bw! + return serverStatus +enddef + +def LspRunTests() + :set nomore + :set debug=beep + delete('results.txt') + + if !StartLangServer() + writefile(['FAIL: Not able to start the C language server'], 'results.txt') + return + endif + # Get the list of test functions in this file and call them var fns: list = execute('function /Test_') ->split("\n") -- 2.48.1