Before: Save g:ale_sh_shfmt_executable Save g:ale_sh_shfmt_options " Use an invalid global executable, so we don't match it. let g:ale_sh_shfmt_executable = 'xxxinvalid' let g:ale_sh_shfmt_options = '' Execute(The shfmt callback should return the correct default values): AssertEqual \ { \ 'command': ale#Escape('xxxinvalid'), \ }, \ ale#fixers#shfmt#Fix(bufnr('')) Execute(The shfmt callback should include custom shfmt options): let g:ale_sh_shfmt_options = '--some-option' AssertEqual \ { \ 'command': ale#Escape(g:ale_sh_shfmt_executable) \ . ' --some-option', \ }, \ ale#fixers#shfmt#Fix(bufnr(''))