Before: Save g:ale_go_go_executable Save g:ale_go_govet_options call ale#assert#SetUpLinterTest('go', 'govet') After: Restore call ale#assert#TearDownLinterTest() Execute(The default command should be correct): AssertLinter 'go', ale#path#CdString(expand('%:p:h')) . ' go vet .' Execute(Extra options should be supported): let g:ale_go_govet_options = '--foo-bar' AssertLinter 'go', ale#path#CdString(expand('%:p:h')) . ' go vet --foo-bar .' Execute(The executable should be configurable): let g:ale_go_go_executable = 'foobar' AssertLinter 'foobar', ale#path#CdString(expand('%:p:h')) . ' foobar vet .'