Tests for autocommands on :close commandWrite three files and open them, each in a window.Then go to next window, with autocommand that deletes the previous one.Do this twice, writing the file.Also test deleting the buffer on a Unload event. If this goes wrong therewill be the ATTENTION prompt.Also test changing buffers in a BufDel autocommand. If this goes wrong thereare ml_line errors and/or a Crash.STARTTEST:so small.vim:/^start of testfile/,/^end of testfile/w! Xtestje1:/^start of testfile/,/^end of testfile/w! Xtestje2:/^start of testfile/,/^end of testfile/w! Xtestje3:e Xtestje1otestje1:w:sp Xtestje2otestje2:w:sp Xtestje3otestje3:w:au WinLeave Xtestje2 bwipe:w! test.out:au WinLeave Xtestje1 bwipe Xtestje3:close:w >>test.out:e Xtestje1:bwipe Xtestje2 Xtestje3 test.out:au!:au! BufUnload Xtestje1 bwipe:e Xtestje3:w >>test.out:e Xtestje2:sp Xtestje1:e:w >>test.out:au!:only:e Xtestje1:bwipe Xtestje2 Xtestje3 test.out test13.in:au BufWipeout Xtestje1 buf Xtestje1:bwipe:w >>test.out:qa!ENDTESTstart of testfile contents contents contentsend of testfile
Tests for autocommands on :close command
Write three files and open them, each in a window.
Then go to next window, with autocommand that deletes the previous one.
Do this twice, writing the file.
Also test deleting the buffer on a Unload event. If this goes wrong there
will be the ATTENTION prompt.
Also test changing buffers in a BufDel autocommand. If this goes wrong there
are ml_line errors and/or a Crash.
STARTTEST
:so small.vim
:/^start of testfile/,/^end of testfile/w! Xtestje1
:/^start of testfile/,/^end of testfile/w! Xtestje2
:/^start of testfile/,/^end of testfile/w! Xtestje3
:e Xtestje1
otestje1
:w
:sp Xtestje2
otestje2
:w
:sp Xtestje3
otestje3
:w
:au WinLeave Xtestje2 bwipe
:w! test.out
:au WinLeave Xtestje1 bwipe Xtestje3
:close
:w >>test.out
:e Xtestje1
:bwipe Xtestje2 Xtestje3 test.out
:au!
:au! BufUnload Xtestje1 bwipe
:e Xtestje3
:w >>test.out
:e Xtestje2
:sp Xtestje1
:e
:w >>test.out
:au!
:only
:e Xtestje1
:bwipe Xtestje2 Xtestje3 test.out test13.in
:au BufWipeout Xtestje1 buf Xtestje1
:bwipe
:w >>test.out
:qa!
ENDTEST
start of testfile
contents
contents
contents
end of testfile