diff options
Diffstat (limited to 'test/command_callback')
-rw-r--r-- | test/command_callback/test_thrift_command_callback.vader | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/test/command_callback/test_thrift_command_callback.vader b/test/command_callback/test_thrift_command_callback.vader new file mode 100644 index 00000000..43487f42 --- /dev/null +++ b/test/command_callback/test_thrift_command_callback.vader @@ -0,0 +1,61 @@ +Before: + Save g:ale_thrift_thrift_executable + Save g:ale_thrift_thrift_generators + Save g:ale_thrift_thrift_includes + Save g:ale_thrift_thrift_options + + unlet! b:ale_thrift_thrift_executable + unlet! b:ale_thrift_thrift_generators + unlet! b:ale_thrift_thrift_includes + unlet! b:ale_thrift_thrift_options + + function! GetCommand(buffer) abort + call ale#engine#InitBufferInfo(a:buffer) + let l:result = ale_linters#thrift#thrift#GetCommand(a:buffer) + call ale#engine#Cleanup(a:buffer) + return l:result + endfunction + + runtime ale_linters/thrift/thrift.vim + +After: + Restore + delfunction GetCommand + unlet! b:ale_thrift_thrift_executable + unlet! b:ale_thrift_thrift_generators + unlet! b:ale_thrift_thrift_includes + unlet! b:ale_thrift_thrift_options + call ale#linter#Reset() + +Execute(The executable should be configurable): + AssertEqual 'thrift', ale_linters#thrift#thrift#GetExecutable(bufnr('')) + + let b:ale_thrift_thrift_executable = 'foobar' + AssertEqual 'foobar', ale_linters#thrift#thrift#GetExecutable(bufnr('')) + +Execute(The executable should be used in the command): + Assert GetCommand(bufnr('%')) =~# "^'thrift'" + + let b:ale_thrift_thrift_executable = 'foobar' + Assert GetCommand(bufnr('%')) =~# "^'foobar'" + +Execute(The list of generators should be configurable): + Assert GetCommand(bufnr('%')) =~# '--gen cpp' + + let b:ale_thrift_thrift_generators = ['java', 'py:dynamic'] + Assert GetCommand(bufnr('%')) =~# '--gen java --gen py:dynamic' + + let b:ale_thrift_thrift_generators = [] + Assert GetCommand(bufnr('%')) =~# '--gen cpp' + +Execute(The list of include paths should be configurable): + Assert GetCommand(bufnr('%')) !~# '-I' + + let b:ale_thrift_thrift_includes = ['included/path'] + Assert GetCommand(bufnr('%')) =~# '-I included/path' + +Execute(The string of compiler options should be configurable): + Assert GetCommand(bufnr('%')) =~# '-strict' + + let b:ale_thrift_thrift_options = '-strict --allow-64bit-consts' + Assert GetCommand(bufnr('%')) =~# '-strict --allow-64bit-consts' |