From 794224aafa6968dd635a96b66ddf218dfdea38d8 Mon Sep 17 00:00:00 2001 From: w0rp Date: Wed, 19 Aug 2020 00:47:39 +0100 Subject: #3056 Add tests for parsed C/C++ -std flag handling --- .../test_c_gcc_command_callbacks.vader | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'test/command_callback/test_c_gcc_command_callbacks.vader') diff --git a/test/command_callback/test_c_gcc_command_callbacks.vader b/test/command_callback/test_c_gcc_command_callbacks.vader index 2dbb8b7c..ee5d9030 100644 --- a/test/command_callback/test_c_gcc_command_callbacks.vader +++ b/test/command_callback/test_c_gcc_command_callbacks.vader @@ -1,5 +1,13 @@ Before: Save g:ale_c_parse_makefile + let g:get_cflags_return_value = '' + + runtime autoload/ale/c.vim + + function! ale#c#GetCFlags(buffer, output) abort + return g:get_cflags_return_value + endfunction + let g:ale_c_parse_makefile = 0 call ale#assert#SetUpLinterTest('c', 'gcc') @@ -10,13 +18,22 @@ Before: \ . ' -std=c11 -Wall -' After: - call ale#assert#TearDownLinterTest() - + unlet! g:get_cflags_return_value unlet! b:command_tail + runtime autoload/ale/c.vim + + call ale#assert#TearDownLinterTest() + Execute(The executable should be configurable): AssertLinter 'gcc', [ale#Escape('gcc') . b:command_tail] let b:ale_c_gcc_executable = 'foobar' AssertLinter 'foobar', [ale#Escape('foobar') . b:command_tail] + +Execute(The -std flag should be replaced by parsed C flags): + let b:command_tail = substitute(b:command_tail, 'c11', 'c99 ', '') + let g:get_cflags_return_value = '-std=c99' + + AssertLinter 'gcc', ale#Escape('gcc') . b:command_tail -- cgit v1.2.3