diff src/testdir/test_scroll_opt.vim @ 31954:d8fdafc4b390 v9.0.1309

patch 9.0.1309: scrolling two lines with even line count and 'scrolloff' set Commit: https://github.com/vim/vim/commit/1d6539cf36a7b6d1afe76fb6316fe662f543bf60 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Feb 14 17:41:20 2023 +0000 patch 9.0.1309: scrolling two lines with even line count and 'scrolloff' set Problem: Scrolling two lines with even line count and 'scrolloff' set. Solution: Adjust how the topline is computed. (closes https://github.com/vim/vim/issues/10545)
author Bram Moolenaar <Bram@vim.org>
date Tue, 14 Feb 2023 18:45:05 +0100
parents dbec60b8c253
children 8323e235ff44
line wrap: on
line diff
--- a/src/testdir/test_scroll_opt.vim
+++ b/src/testdir/test_scroll_opt.vim
@@ -38,6 +38,23 @@ func Test_reset_scroll()
   quit!
 endfunc
 
+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
+
 func Test_CtrlE_CtrlY_stop_at_end()
   enew
   call setline(1, ['one', 'two'])