summaryrefslogtreecommitdiff
path: root/test/command_callback/test_gometalinter_command_callback.vader
blob: dcaf03b05e67ede1dd38be682d3fd51fa6e9b260 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Before:
  Save b:ale_go_gometalinter_executable
  Save b:ale_go_gometalinter_options

  let b:ale_go_gometalinter_executable = 'gometalinter'
  let b:ale_go_gometalinter_options = ''

  runtime ale_linters/go/gometalinter.vim

  silent! cd /testplugin/test/command_callback
  let g:dir = getcwd()

  call ale#test#SetFilename('test.go')

After:
  Restore

  silent execute 'cd ' . fnameescape(g:dir)
  unlet! g:dir

  call ale#linter#Reset()

Execute(The gometalinter callback should return the right defaults):
  AssertEqual
  \ 'gometalinter',
  \ ale_linters#go#gometalinter#GetExecutable(bufnr(''))
  AssertEqual
  \ ale#Escape('gometalinter')
  \   . ' --include=''^' . expand('%:p') . '.*$'''
  \   . ' ' . ale#Escape(getcwd()),
  \ ale_linters#go#gometalinter#GetCommand(bufnr(''))

Execute(The gometalinter callback should use a configured executable):
  let b:ale_go_gometalinter_executable = 'something else'

  AssertEqual
  \ 'something else',
  \ ale_linters#go#gometalinter#GetExecutable(bufnr(''))
  AssertEqual
  \ ale#Escape('something else')
  \   . ' --include=''^' . expand('%:p') . '.*$'''
  \   . ' ' . ale#Escape(getcwd()),
  \ ale_linters#go#gometalinter#GetCommand(bufnr(''))

Execute(The gometalinter callback should use configured options):
  let b:ale_go_gometalinter_options = '--foobar'

  AssertEqual
  \ ale#Escape('gometalinter')
  \   . ' --include=''^' . expand('%:p') . '.*$'''
  \   . ' --foobar'
  \   . ' ' . ale#Escape(getcwd()),
  \ ale_linters#go#gometalinter#GetCommand(bufnr(''))