36b50058bb
* Add terraform-lsp integration https://github.com/juliosueiras/terraform-lsp * Add tests & docs for terraform-lsp integration terraform_langserver_options setting added to send custom flags to terraform-lsp. Vader tests have been added to test custom executable, custom flags, and finding the project root. All tests pass. Initial documentation has been added for the above. Resolves dense-analysis/ale#2758, juliosueiras#57 * Fix tag alignment Co-authored-by: = <Aubrey.S.Lavigne@gmail.com> Co-authored-by: w0rp <w0rp@users.noreply.github.com>
48 lines
1.3 KiB
Text
48 lines
1.3 KiB
Text
Before:
|
|
call ale#assert#SetUpLinterTest('terraform', 'terraform_lsp')
|
|
|
|
After:
|
|
if isdirectory(g:dir . '/.terraform')
|
|
call delete(g:dir . '/.terraform', 'd')
|
|
endif
|
|
|
|
unlet! b:ale_terraform_langserver_executable
|
|
unlet! b:ale_terraform_langserver_options
|
|
|
|
call ale#assert#TearDownLinterTest()
|
|
|
|
Execute(Should send correct LSP language):
|
|
AssertLSPLanguage 'terraform'
|
|
|
|
Execute(Should load default executable):
|
|
AssertLinter 'terraform-lsp', ale#Escape('terraform-lsp')
|
|
|
|
Execute(Should configure custom executable):
|
|
let b:ale_terraform_langserver_executable = 'foo'
|
|
AssertLinter 'foo', ale#Escape('foo')
|
|
|
|
Execute(Should set custom options):
|
|
let b:ale_terraform_langserver_options = '--bar'
|
|
|
|
AssertLinter 'terraform-lsp',
|
|
\ ale#Escape('terraform-lsp') . ' --bar'
|
|
|
|
Execute(Should return current directory if it contains .terraform directory):
|
|
call mkdir(g:dir . '/.terraform')
|
|
AssertLSPProject g:dir
|
|
|
|
Execute(Should return nearest directory with .terraform if found in parent directory):
|
|
call ale#test#SetFilename('../terraform_files/main.tf')
|
|
|
|
let b:parent_dir = ale#path#Simplify(g:dir . '/..')
|
|
let b:tf_dir = b:parent_dir . '/.terraform'
|
|
|
|
if !isdirectory(b:tf_dir)
|
|
call mkdir(b:tf_dir)
|
|
endif
|
|
|
|
AssertLSPProject b:parent_dir
|
|
|
|
call delete(b:tf_dir, 'd')
|
|
unlet!b:parent_dir
|
|
unlet!b:tf_dir
|