2018-06-03 16:31:37 -07:00
|
|
|
" Test for reset 'scroll'
|
|
|
|
|
|
|
|
func Test_reset_scroll()
|
|
|
|
let scr = &l:scroll
|
|
|
|
|
|
|
|
setlocal scroll=1
|
|
|
|
setlocal scroll&
|
|
|
|
call assert_equal(scr, &l:scroll)
|
|
|
|
|
|
|
|
setlocal scroll=1
|
|
|
|
setlocal scroll=0
|
|
|
|
call assert_equal(scr, &l:scroll)
|
|
|
|
|
|
|
|
try
|
|
|
|
execute 'setlocal scroll=' . (winheight(0) + 1)
|
|
|
|
" not reached
|
|
|
|
call assert_false(1)
|
|
|
|
catch
|
|
|
|
call assert_exception('E49:')
|
|
|
|
endtry
|
|
|
|
|
|
|
|
split
|
|
|
|
|
|
|
|
let scr = &l:scroll
|
|
|
|
|
|
|
|
setlocal scroll=1
|
|
|
|
setlocal scroll&
|
|
|
|
call assert_equal(scr, &l:scroll)
|
|
|
|
|
|
|
|
setlocal scroll=1
|
|
|
|
setlocal scroll=0
|
|
|
|
call assert_equal(scr, &l:scroll)
|
|
|
|
|
|
|
|
quit!
|
|
|
|
endfunc
|
2023-02-15 16:25:16 -07:00
|
|
|
|
|
|
|
func Test_scolloff_even_line_count()
|
|
|
|
new
|
|
|
|
resize 6
|
|
|
|
setlocal scrolloff=3
|
|
|
|
call setline(1, range(20))
|
|
|
|
normal 2j
|
|
|
|
call assert_equal(1, getwininfo(win_getid())[0].topline)
|
|
|
|
normal j
|
|
|
|
call assert_equal(1, getwininfo(win_getid())[0].topline)
|
|
|
|
normal j
|
|
|
|
call assert_equal(2, getwininfo(win_getid())[0].topline)
|
|
|
|
normal j
|
|
|
|
call assert_equal(3, getwininfo(win_getid())[0].topline)
|
|
|
|
|
|
|
|
bwipe!
|
|
|
|
endfunc
|
|
|
|
|
|
|
|
" vim: shiftwidth=2 sts=2 expandtab
|