2017-08-24 21:49:43 +00:00
|
|
|
Before:
|
|
|
|
Save g:ale_c_clangformat_executable
|
2021-02-14 14:03:04 +00:00
|
|
|
Save g:c_clangformat_style_option
|
|
|
|
Save g:c_clangformat_use_local_file
|
2017-08-24 21:49:43 +00:00
|
|
|
|
|
|
|
" Use an invalid global executable, so we don't match it.
|
|
|
|
let g:ale_c_clangformat_executable = 'xxxinvalid'
|
|
|
|
|
|
|
|
call ale#test#SetDirectory('/testplugin/test/fixers')
|
|
|
|
let g:dir = getcwd()
|
|
|
|
|
|
|
|
After:
|
|
|
|
Restore
|
|
|
|
|
|
|
|
call ale#test#RestoreDirectory()
|
|
|
|
|
|
|
|
Execute(The clang-format callback should return the correct default values):
|
2021-03-20 22:11:22 +00:00
|
|
|
call ale#test#SetFilename('../test-files/c/dummy.c')
|
2017-08-24 21:49:43 +00:00
|
|
|
|
|
|
|
AssertEqual
|
|
|
|
\ {
|
|
|
|
\ 'command': ale#Escape(g:ale_c_clangformat_executable)
|
2019-07-15 19:26:16 +00:00
|
|
|
\ . ' --assume-filename=' . ale#Escape(bufname(bufnr('')))
|
2017-08-24 21:49:43 +00:00
|
|
|
\ },
|
|
|
|
\ ale#fixers#clangformat#Fix(bufnr(''))
|
|
|
|
|
|
|
|
Execute(The clangformat callback should include any additional options):
|
2021-03-20 22:11:22 +00:00
|
|
|
call ale#test#SetFilename('../test-files/c/dummy.c')
|
2017-08-24 21:49:43 +00:00
|
|
|
let g:ale_c_clangformat_options = '--some-option'
|
|
|
|
|
|
|
|
AssertEqual
|
|
|
|
\ {
|
|
|
|
\ 'command': ale#Escape(g:ale_c_clangformat_executable)
|
2019-07-15 19:26:16 +00:00
|
|
|
\ . ' --assume-filename=' . ale#Escape(bufname(bufnr('')))
|
2017-08-24 21:49:43 +00:00
|
|
|
\ . ' --some-option',
|
|
|
|
\ },
|
|
|
|
\ ale#fixers#clangformat#Fix(bufnr(''))
|
2021-02-14 14:03:04 +00:00
|
|
|
|
|
|
|
Execute(The clangformat callback should include style options as well):
|
2021-03-20 22:11:22 +00:00
|
|
|
call ale#test#SetFilename('../test-files/c/dummy.c')
|
2021-02-14 14:03:04 +00:00
|
|
|
let g:ale_c_clangformat_options = '--some-option'
|
|
|
|
let g:ale_c_clangformat_style_option = '{BasedOnStyle: Microsoft, ColumnLimit:80,}'
|
|
|
|
|
|
|
|
AssertEqual
|
|
|
|
\ {
|
|
|
|
\ 'command': ale#Escape(g:ale_c_clangformat_executable)
|
|
|
|
\ . ' --assume-filename=' . ale#Escape(bufname(bufnr('')))
|
|
|
|
\ . ' --some-option' . " -style='{BasedOnStyle: Microsoft, ColumnLimit:80,}'",
|
|
|
|
\ },
|
|
|
|
\ ale#fixers#clangformat#Fix(bufnr(''))
|
|
|
|
|
|
|
|
Execute(The clangformat callback should use local file instead of style options):
|
2021-03-20 22:11:22 +00:00
|
|
|
call ale#test#SetFilename('../test-files/clangformat/with_clangformat/dummy.c')
|
2021-02-14 14:03:04 +00:00
|
|
|
let g:ale_c_clangformat_options = '--some-option'
|
|
|
|
let g:ale_c_clangformat_style_option = '{BasedOnStyle: Microsoft, ColumnLimit:80,}'
|
|
|
|
let g:ale_c_clangformat_use_local_file = 1
|
|
|
|
|
|
|
|
AssertEqual
|
|
|
|
\ {
|
|
|
|
\ 'command': ale#Escape(g:ale_c_clangformat_executable)
|
|
|
|
\ . ' --assume-filename=' . ale#Escape(bufname(bufnr('')))
|
|
|
|
\ . ' --some-option' . ' -style=file',
|
|
|
|
\ },
|
|
|
|
\ ale#fixers#clangformat#Fix(bufnr(''))
|