| " 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 |