summaryrefslogtreecommitdiff
path: root/test/command_callback/test_clang_tidy_command_callback.vader
diff options
context:
space:
mode:
authorw0rp <devw0rp@gmail.com>2018-07-15 18:24:53 +0100
committerw0rp <devw0rp@gmail.com>2018-07-15 18:28:28 +0100
commita42999a639b2916b769a85f37d037be314d9d61b (patch)
tree5ebfb4d357dc673efa93fd32a66b489c4510de40 /test/command_callback/test_clang_tidy_command_callback.vader
parent5155a35a80fe3b20659eb0f28cc6cc720532dd3f (diff)
downloadale-a42999a639b2916b769a85f37d037be314d9d61b.zip
Massively reduce the amount of code needed for linter tests
Diffstat (limited to 'test/command_callback/test_clang_tidy_command_callback.vader')
-rw-r--r--test/command_callback/test_clang_tidy_command_callback.vader74
1 files changed, 20 insertions, 54 deletions
diff --git a/test/command_callback/test_clang_tidy_command_callback.vader b/test/command_callback/test_clang_tidy_command_callback.vader
index f82efffe..f28609ee 100644
--- a/test/command_callback/test_clang_tidy_command_callback.vader
+++ b/test/command_callback/test_clang_tidy_command_callback.vader
@@ -1,74 +1,46 @@
Before:
- Save g:ale_cpp_clangtidy_checks
- Save g:ale_cpp_clangtidy_options
- Save g:ale_c_build_dir
-
- unlet! g:ale_c_build_dir
- unlet! b:ale_c_build_dir
- unlet! g:ale_cpp_clangtidy_checks
- unlet! b:ale_cpp_clangtidy_checks
- unlet! g:ale_cpp_clangtidy_options
- unlet! b:ale_cpp_clangtidy_options
-
- runtime ale_linters/cpp/clangtidy.vim
-
+ call ale#assert#SetUpLinterTest('cpp', 'clangtidy')
call ale#test#SetFilename('test.cpp')
After:
- unlet! b:ale_c_build_dir
- unlet! b:ale_cpp_clangtidy_checks
- unlet! b:ale_cpp_clangtidy_options
- unlet! b:ale_cpp_clangtidy_executable
-
- Restore
- call ale#linter#Reset()
+ call ale#assert#TearDownLinterTest()
Execute(The clangtidy command default should be correct):
- AssertEqual
- \ ale#Escape('clang-tidy')
- \ . ' -checks=' . ale#Escape('*') . ' %s',
- \ ale_linters#cpp#clangtidy#GetCommand(bufnr(''))
+ AssertLinter 'clang-tidy',
+ \ ale#Escape('clang-tidy') . ' -checks=' . ale#Escape('*') . ' %s'
Execute(You should be able to remove the -checks option for clang-tidy):
let b:ale_cpp_clangtidy_checks = []
- AssertEqual
- \ ale#Escape('clang-tidy')
- \ . ' %s',
- \ ale_linters#cpp#clangtidy#GetCommand(bufnr(''))
+ AssertLinter 'clang-tidy', ale#Escape('clang-tidy') . ' %s'
Execute(You should be able to set other checks for clang-tidy):
let b:ale_cpp_clangtidy_checks = ['-*', 'clang-analyzer-*']
- AssertEqual
+ AssertLinter 'clang-tidy',
\ ale#Escape('clang-tidy')
- \ . ' -checks=' . ale#Escape('-*,clang-analyzer-*') . ' %s',
- \ ale_linters#cpp#clangtidy#GetCommand(bufnr(''))
+ \ . ' -checks=' . ale#Escape('-*,clang-analyzer-*') . ' %s'
Execute(You should be able to manually set compiler flags for clang-tidy):
let b:ale_cpp_clangtidy_options = '-Wall'
- AssertEqual
- \ ale#Escape('clang-tidy')
- \ . ' -checks=' . ale#Escape('*') . ' %s -- -Wall',
- \ ale_linters#cpp#clangtidy#GetCommand(bufnr(''))
+ AssertLinter 'clang-tidy',
+ \ ale#Escape('clang-tidy') . ' -checks=' . ale#Escape('*') . ' %s -- -Wall'
\
Execute(The build directory should be configurable):
let b:ale_c_build_dir = '/foo/bar'
- AssertEqual
+ AssertLinter 'clang-tidy',
\ ale#Escape('clang-tidy')
- \ . ' -checks=' . ale#Escape('*') . ' %s -p ' . ale#Escape('/foo/bar'),
- \ ale_linters#cpp#clangtidy#GetCommand(bufnr(''))
+ \ . ' -checks=' . ale#Escape('*') . ' %s -p ' . ale#Escape('/foo/bar')
Execute(The build directory setting should override the options):
let b:ale_c_build_dir = '/foo/bar'
let b:ale_cpp_clangtidy_options = '-Wall'
- AssertEqual
+ AssertLinter 'clang-tidy',
\ ale#Escape('clang-tidy')
- \ . ' -checks=' . ale#Escape('*') . ' %s -p ' . ale#Escape('/foo/bar'),
- \ ale_linters#cpp#clangtidy#GetCommand(bufnr(''))
+ \ . ' -checks=' . ale#Escape('*') . ' %s -p ' . ale#Escape('/foo/bar')
Execute(The build directory should be ignored for header files):
call ale#test#SetFilename('test.h')
@@ -76,22 +48,16 @@ Execute(The build directory should be ignored for header files):
let b:ale_c_build_dir = '/foo/bar'
let b:ale_cpp_clangtidy_options = '-Wall'
- AssertEqual
- \ ale#Escape('clang-tidy')
- \ . ' -checks=' . ale#Escape('*') . ' %s -- -Wall',
- \ ale_linters#cpp#clangtidy#GetCommand(bufnr(''))
- \
+ AssertLinter 'clang-tidy',
+ \ ale#Escape('clang-tidy') . ' -checks=' . ale#Escape('*') . ' %s -- -Wall'
+
call ale#test#SetFilename('test.hpp')
- AssertEqual
- \ ale#Escape('clang-tidy')
- \ . ' -checks=' . ale#Escape('*') . ' %s -- -Wall',
- \ ale_linters#cpp#clangtidy#GetCommand(bufnr(''))
+ AssertLinter 'clang-tidy',
+ \ ale#Escape('clang-tidy') . ' -checks=' . ale#Escape('*') . ' %s -- -Wall'
Execute(The executable should be configurable):
let b:ale_cpp_clangtidy_executable = 'foobar'
- AssertEqual
- \ ale#Escape('foobar')
- \ . ' -checks=' . ale#Escape('*') . ' %s',
- \ ale_linters#cpp#clangtidy#GetCommand(bufnr(''))
+ AssertLinter 'foobar',
+ \ ale#Escape('foobar') . ' -checks=' . ale#Escape('*') . ' %s'