summaryrefslogtreecommitdiff
path: root/test/command_callback/test_brakeman_command_callback.vader
blob: 607aec6425b83efc619e43008398bbe1459986b1 (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
Before:
  Save g:ale_ruby_brakeman_options

  runtime ale_linters/ruby/brakeman.vim

  let g:ale_ruby_brakeman_options = ''

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

After:
  Restore

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

  call ale#linter#Reset()

Execute(The brakeman command callback should detect absence of a valid Rails app):
  call ale#test#SetFilename('../ruby_fixtures/not_a_rails_app/test.rb')

  AssertEqual
  \   '',
  \   ale_linters#ruby#brakeman#GetCommand(bufnr(''))

Execute(The brakeman command callback should find a valid Rails app root):
  call ale#test#SetFilename('../ruby_fixtures/valid_rails_app/db/test.rb')

  AssertEqual
  \ 'brakeman -f json -q  -p '
  \ . ale#Escape(simplify(g:dir . '/../ruby_fixtures/valid_rails_app')),
  \ ale_linters#ruby#brakeman#GetCommand(bufnr(''))

Execute(The brakeman command callback should include configured options):
  call ale#test#SetFilename('../ruby_fixtures/valid_rails_app/db/test.rb')

  let g:ale_ruby_brakeman_options = '--combobulate'

  AssertEqual
  \ 'brakeman -f json -q --combobulate -p '
  \ . ale#Escape(simplify(g:dir . '/../ruby_fixtures/valid_rails_app')),
  \ ale_linters#ruby#brakeman#GetCommand(bufnr(''))