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(''))