Before: Save g:ale_buffer_info let g:job_started_success = 0 let g:ale_run_synchronously = 1 unlet! b:ale_linted function! TestCallback(buffer, output) return [] endfunction call ale#linter#PreventLoading('testft') call ale#linter#Define('testft', { \ 'name': 'testlinter', \ 'callback': 'TestCallback', \ 'executable': has('win32') ? 'cmd' : 'true', \ 'command': 'true', \}) After: Restore let g:ale_run_synchronously = 0 augroup VaderTest autocmd! augroup END augroup! VaderTest unlet! g:job_started_success delfunction TestCallback call ale#linter#Reset() Given testft (An empty file): Execute(Run a lint cycle with an actual job to check for ALEJobStarted): augroup VaderTest autocmd! autocmd User ALEJobStarted let g:job_started_success = 1 augroup END ALELint AssertEqual g:job_started_success, 1