diff options
author | Dan George <dgeorge83616@yahoo.com> | 2021-11-20 02:01:32 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-20 19:01:32 +0900 |
commit | 072750137f752c0a09fd1ff493da2bea6519b7ef (patch) | |
tree | afa57e9b85d20b48507b7e27fad29e440c7c937e /test/linter | |
parent | ea643b97ab08e571a543f4bd89cd3170f3f288e2 (diff) | |
download | ale-072750137f752c0a09fd1ff493da2bea6519b7ef.zip |
Fix --file-filter option on cppcheck command (#3987)
* Add cppcheck handler match on misra msg
* Fix cppcheck --file-filter setting
This time, the tests and actually usage both work.
Co-authored-by: Dan George <dgeorge@anduril.com>
Diffstat (limited to 'test/linter')
-rw-r--r-- | test/linter/test_c_cppcheck.vader | 11 | ||||
-rw-r--r-- | test/linter/test_cpp_cppcheck.vader | 11 |
2 files changed, 14 insertions, 8 deletions
diff --git a/test/linter/test_c_cppcheck.vader b/test/linter/test_c_cppcheck.vader index c0611143..0cc3a5d3 100644 --- a/test/linter/test_c_cppcheck.vader +++ b/test/linter/test_c_cppcheck.vader @@ -3,6 +3,7 @@ Before: let b:command_tail = ' -q --language=c --template=' . ale#Escape('{file}:{line}:{column}: {severity}:{inconclusive:inconclusive:} {message} [{id}]\\n{code}') . ' --enable=style -I' . ale#Escape(ale#path#Simplify(g:dir)) .' %t' After: + unlet! b:rel_file_path unlet! b:command_tail call ale#assert#TearDownLinterTest() @@ -15,25 +16,27 @@ Execute(The executable should be configurable): AssertLinter 'foobar', ale#Escape('foobar') . b:command_tail Execute(cppcheck for C should detect compile_commands.json files): - call ale#test#SetFilename('../test-files/cppcheck/one/foo.c') + let b:rel_file_path = '../test-files/cppcheck/one/foo.c' + call ale#test#SetFilename(b:rel_file_path) AssertLinterCwd ale#path#Simplify(g:dir . '/../test-files/cppcheck/one') AssertLinter 'cppcheck', ale#Escape('cppcheck') \ . ' -q --language=c' \ . ' --template=' . ale#Escape('{file}:{line}:{column}: {severity}:{inconclusive:inconclusive:} {message} [{id}]\\n{code}') \ . ' --project=' . ale#Escape('compile_commands.json') - \ . ' --file-filter=' . ale#Escape('foo.c') + \ . ' --file-filter=' . ale#Escape(ale#test#GetFilename(b:rel_file_path)) \ . ' --enable=style %t' Execute(cppcheck for C should detect compile_commands.json files in build directories): - call ale#test#SetFilename('../test-files/cppcheck/with_build_dir/foo.c') + let b:rel_file_path = '../test-files/cppcheck/with_build_dir/foo.c' + call ale#test#SetFilename(b:rel_file_path) AssertLinterCwd ale#path#Simplify(g:dir . '/../test-files/cppcheck/with_build_dir') AssertLinter 'cppcheck', ale#Escape('cppcheck') \ . ' -q --language=c' \ . ' --template=' . ale#Escape('{file}:{line}:{column}: {severity}:{inconclusive:inconclusive:} {message} [{id}]\\n{code}') \ . ' --project=' . ale#Escape(ale#path#Simplify('build/compile_commands.json')) - \ . ' --file-filter=' . ale#Escape('foo.c') + \ . ' --file-filter=' . ale#Escape(ale#test#GetFilename(b:rel_file_path)) \ . ' --enable=style %t' Execute(cppcheck for C should include file dir if compile_commands.json file is not found): diff --git a/test/linter/test_cpp_cppcheck.vader b/test/linter/test_cpp_cppcheck.vader index 2cde1da4..21d6707d 100644 --- a/test/linter/test_cpp_cppcheck.vader +++ b/test/linter/test_cpp_cppcheck.vader @@ -9,6 +9,7 @@ After: set buftype=nofile endif + unlet! b:rel_file_path unlet! b:command_tail call ale#assert#TearDownLinterTest() @@ -21,25 +22,27 @@ Execute(The executable should be configurable): AssertLinter 'foobar', ale#Escape('foobar') . b:command_tail Execute(cppcheck for C++ should detect compile_commands.json files): - call ale#test#SetFilename('../test-files/cppcheck/one/foo.cpp') + let b:rel_file_path = '../test-files/cppcheck/one/foo.cpp' + call ale#test#SetFilename(b:rel_file_path) AssertLinterCwd ale#path#Simplify(g:dir . '/../test-files/cppcheck/one') AssertLinter 'cppcheck', ale#Escape('cppcheck') \ . ' -q --language=c++' \ . ' --template=' . ale#Escape('{file}:{line}:{column}: {severity}:{inconclusive:inconclusive:} {message} [{id}]\\n{code}') \ . ' --project=' . ale#Escape('compile_commands.json') - \ . ' --file-filter=' . ale#Escape('foo.cpp') + \ . ' --file-filter=' . ale#Escape(ale#test#GetFilename(b:rel_file_path)) \ . ' --enable=style %t' Execute(cppcheck for C++ should detect compile_commands.json files in build directories): - call ale#test#SetFilename('../test-files/cppcheck/with_build_dir/foo.cpp') + let b:rel_file_path = '../test-files/cppcheck/with_build_dir/foo.cpp' + call ale#test#SetFilename(b:rel_file_path) AssertLinterCwd ale#path#Simplify(g:dir . '/../test-files/cppcheck/with_build_dir') AssertLinter 'cppcheck', ale#Escape('cppcheck') \ . ' -q --language=c++' \ . ' --template=' . ale#Escape('{file}:{line}:{column}: {severity}:{inconclusive:inconclusive:} {message} [{id}]\\n{code}') \ . ' --project=' . ale#Escape(ale#path#Simplify('build/compile_commands.json')) - \ . ' --file-filter=' . ale#Escape('foo.cpp') + \ . ' --file-filter=' . ale#Escape(ale#test#GetFilename(b:rel_file_path)) \ . ' --enable=style %t' Execute(cppcheck for C++ should include file dir if compile_commands.json file is not found): |