ale/test/command_callback/test_staticcheck_command_ca...

42 lines
1.2 KiB
Plaintext

Before:
Save b:ale_go_staticcheck_options
Save b:ale_go_staticcheck_lint_package
let b:ale_go_staticcheck_options = ''
let b:ale_go_staticcheck_lint_package = 0
runtime ale_linters/go/staticcheck.vim
call ale#test#SetDirectory('/testplugin/test/command_callback')
call ale#test#SetFilename('test.go')
After:
Restore
call ale#test#RestoreDirectory()
call ale#linter#Reset()
Execute(The staticcheck callback should return the right defaults):
AssertEqual
\ 'cd ' . ale#Escape(expand('%:p:h')) . ' && '
\ . 'staticcheck '
\ . ale#Escape(expand('%' . ':t')),
\ ale_linters#go#staticcheck#GetCommand(bufnr(''))
Execute(The staticcheck callback should use configured options):
let b:ale_go_staticcheck_options = '-test'
AssertEqual
\ 'cd ' . ale#Escape(expand('%:p:h')) . ' && '
\ . 'staticcheck '
\ . '-test ' . ale#Escape(expand('%' . ':t')),
\ ale_linters#go#staticcheck#GetCommand(bufnr(''))
Execute(The staticcheck `lint_package` option should use the correct command):
let b:ale_go_staticcheck_lint_package = 1
AssertEqual
\ 'cd ' . ale#Escape(expand('%:p:h')) . ' && '
\ . 'staticcheck .',
\ ale_linters#go#staticcheck#GetCommand(bufnr(''))