neovim/src/nvim/testdir/test_window_cmd.vim

71 lines
1.6 KiB
VimL
Raw Normal View History

" Tests for window cmd (:wincmd, :split, :vsplit, :resize and etc...)
func Test_window_cmd_ls0_with_split()
set ls=0
set splitbelow
split
quit
call assert_equal(0, &lines - &cmdheight - winheight(0))
new | only!
"
set splitbelow&vim
botright split
quit
call assert_equal(0, &lines - &cmdheight - winheight(0))
new | only!
set ls&vim
endfunc
func Test_window_cmd_cmdwin_with_vsp()
let efmt='Expected 0 but got %d (in ls=%d, %s window)'
for v in range(0, 2)
exec "set ls=" . v
vsplit
call feedkeys("q:\<CR>")
let ac = &lines - (&cmdheight + winheight(0) + !!v)
let emsg = printf(efmt, ac, v, 'left')
call assert_equal(0, ac, emsg)
wincmd w
let ac = &lines - (&cmdheight + winheight(0) + !!v)
let emsg = printf(efmt, ac, v, 'right')
call assert_equal(0, ac, emsg)
new | only!
endfor
set ls&vim
endfunc
function Test_window_cmd_wincmd_gf()
let fname = 'test_gf.txt'
let swp_fname = '.' . fname . '.swp'
call writefile([], fname)
call writefile([], swp_fname)
function s:swap_exists()
let v:swapchoice = s:swap_choice
endfunc
augroup test_window_cmd_wincmd_gf
autocmd!
exec "autocmd SwapExists " . fname . " call s:swap_exists()"
augroup END
call setline(1, fname)
" (E)dit anyway
let s:swap_choice = 'e'
wincmd gf
call assert_equal(2, tabpagenr())
call assert_equal(fname, bufname("%"))
quit!
" (Q)uit
let s:swap_choice = 'q'
wincmd gf
call assert_equal(1, tabpagenr())
call assert_notequal(fname, bufname("%"))
new | only!
call delete(fname)
call delete(swp_fname)
augroup! test_window_cmd_wincmd_gf
endfunc
" vim: sw=2 et