Before:
  let g:pre_success = 0
  let g:post_success = 0
  let g:ale_run_synchronously = 1

  unlet! b:ale_linted

After:
  let g:ale_run_synchronously = 0
  let g:ale_buffer_info = {}

  augroup VaderTest
    autocmd!
  augroup END

  augroup! VaderTest

Given testft(An empty file):
Execute(Run a lint cycle, and check that a variable is set in the autocmd):
  augroup VaderTest
    autocmd!
    autocmd User ALELintPre let g:pre_success = 1
    autocmd User ALELintPost let g:post_success = 1
  augroup END

  call ale#Queue(0)

  AssertEqual g:pre_success, 1
  AssertEqual g:post_success, 1

Execute(b:ale_linted should be increased after each lint cycle):
  AssertEqual get(b:, 'ale_linted'), 0

  call ale#Queue(0)

  AssertEqual get(b:, 'ale_linted'), 1

  call ale#Queue(0)

  AssertEqual get(b:, 'ale_linted'), 2