vim-patch:9.1.0046: :drop does not re-use empty buffer (#27165)

Problem:  :drop does not re-use empty buffer
          (Rocco Mao)
Solution: Make :drop re-use an empty buffer
          (Rocco Mao)

fixes: vim/vim#13851
closes: vim/vim#13881

f96dc8d07f

Co-authored-by: Rocco Mao <dapeng.mao@qq.com>
This commit is contained in:
zeertzjq
2024-01-24 07:29:33 +08:00
committed by GitHub
parent 6cbfe45454
commit 65bfa86efe
6 changed files with 93 additions and 15 deletions

View File

@@ -90,23 +90,31 @@ endfunc
" Test for the :drop command
func Test_drop_cmd()
call writefile(['L1', 'L2'], 'Xfile')
call writefile(['L1', 'L2'], 'Xdropfile', 'D')
" Test for reusing the current buffer
enew | only
drop Xfile
let expected_nr = bufnr()
drop Xdropfile
call assert_equal(expected_nr, bufnr())
call assert_equal('L2', getline(2))
" Test for switching to an existing window
below new
drop Xfile
drop Xdropfile
call assert_equal(1, winnr())
" Test for splitting the current window
" Test for splitting the current window (set nohidden)
enew | only
set modified
drop Xfile
drop Xdropfile
call assert_equal(2, winnr('$'))
" Not splitting the current window even if modified (set hidden)
set hidden
enew | only
set modified
drop Xdropfile
call assert_equal(1, winnr('$'))
" Check for setting the argument list
call assert_equal(['Xfile'], argv())
call assert_equal(['Xdropfile'], argv())
enew | only!
call delete('Xfile')
endfunc
" Test for the :append command