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