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')
\ 'brakeman -f json -q -p '
\ . ale#Escape(simplify(g:dir . '/../ruby_fixtures/valid_rails_app')),
Execute(The brakeman command callback should include configured options):
let g:ale_ruby_brakeman_options = '--combobulate'
\ 'brakeman -f json -q --combobulate -p '