test_interrupt.vim 671 B

123456789101112131415161718192021222324252627282930313233
  1. " Test behavior of interrupt()
  2. let s:bufwritepre_called = 0
  3. let s:bufwritepost_called = 0
  4. func s:bufwritepre()
  5. let s:bufwritepre_called = 1
  6. call interrupt()
  7. endfunction
  8. func s:bufwritepost()
  9. let s:bufwritepost_called = 1
  10. endfunction
  11. func Test_interrupt()
  12. new Xinterrupt
  13. let n = 0
  14. try
  15. au BufWritePre Xinterrupt call s:bufwritepre()
  16. au BufWritePost Xinterrupt call s:bufwritepost()
  17. w!
  18. catch /^Vim:Interrupt$/
  19. endtry
  20. call assert_equal(1, s:bufwritepre_called)
  21. call assert_equal(0, s:bufwritepost_called)
  22. call assert_equal(0, filereadable('Xinterrupt'))
  23. au! BufWritePre
  24. au! BufWritePost
  25. endfunc
  26. " vim: shiftwidth=2 sts=2 expandtab