Before: Save g:ale_astgrep_executable Save g:ale_astgrep_scan_options After: Restore Execute(The ast-grep callback should return the correct default values): AssertEqual \ { \ 'command': ale#Escape('ast-grep') . ' scan --update-all %t', \ 'read_temporary_file': 1, \ }, \ ale#fixers#astgrep#Fix(bufnr('')) Execute(The astgrep executable and options should be configurable): let g:ale_astgrep_executable = '/path/to/ast-grep' let g:ale_astgrep_scan_options = '--interactive' AssertEqual \ { \ 'command': ale#Escape('/path/to/ast-grep') \ . ' scan' \ . ' --interactive %t', \ 'read_temporary_file': 1, \ }, \ ale#fixers#astgrep#Fix(bufnr(''))