Mercurial > vim
diff src/testdir/test_mksession.vim @ 27122:4fd87205ca80 v8.2.4090
patch 8.2.4090: after restoring a session buffer order can be quite different
Commit: https://github.com/vim/vim/commit/26ebf1f036517ebeacf571c333a83cca7e13bbe2
Author: Evgeni Chasnovski <evgeni.chasnovski@gmail.com>
Date: Fri Jan 14 13:19:43 2022 +0000
patch 8.2.4090: after restoring a session buffer order can be quite different
Problem: After restoring a session buffer order can be quite different.
Solution: Create buffers first. (Evgeni Chasnovski, closes https://github.com/vim/vim/issues/9520)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 14 Jan 2022 14:30:03 +0100 |
parents | 86f8718c643d |
children | f1c00b8085f6 |
line wrap: on
line diff
--- a/src/testdir/test_mksession.vim +++ b/src/testdir/test_mksession.vim @@ -362,6 +362,31 @@ func Test_mksession_buffer_count() set hidden& endfunc +func Test_mksession_buffer_order() + %bwipe! + e Xfoo | e Xbar | e Xbaz | e Xqux + bufdo write + mksession! Xtest_mks.out + + " Verify that loading the session preserves order of buffers + %bwipe! + source Xtest_mks.out + + let s:buf_info = getbufinfo() + call assert_true(s:buf_info[0]['name'] =~# 'Xfoo$') + call assert_true(s:buf_info[1]['name'] =~# 'Xbar$') + call assert_true(s:buf_info[2]['name'] =~# 'Xbaz$') + call assert_true(s:buf_info[3]['name'] =~# 'Xqux$') + + " Clean up. + call delete('Xfoo') + call delete('Xbar') + call delete('Xbaz') + call delete('Xqux') + call delete('Xtest_mks.out') + %bwipe! +endfunc + if has('extra_search') func Test_mksession_hlsearch()