Before:
  Save g:ale_go_go_executable
  Save g:ale_go_govet_options
  Save g:ale_go_go111module

  call ale#assert#SetUpLinterTest('go', 'govet')

After:
  Restore

  unlet! b:ale_go_go111module

  call ale#assert#TearDownLinterTest()

Execute(The default go vet command should be correct):
  AssertLinter 'go', ale#Escape('go') . ' vet .'
  AssertLinterCwd '%s:h'

Execute(The go vet command and options should be configurable):
  let g:ale_go_go_executable = 'foobar'
  let g:ale_go_govet_options = '--foo-bar'

  AssertLinter 'foobar', ale#Escape('foobar') . ' vet --foo-bar .'

Execute(Go environment variables should be supported):
  let b:ale_go_go111module = 'on'

  AssertLinter 'go', ale#Env('GO111MODULE', 'on') . ale#Escape('go') . ' vet .'
