diff src/testdir/test_scrollbind.vim @ 11961:0240e7e3d736 v8.0.0861

patch 8.0.0861: still many old style tests commit https://github.com/vim/vim/commit/4a137b45864310060410f34cb9c7d0f0231bb256 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Aug 4 22:37:11 2017 +0200 patch 8.0.0861: still many old style tests Problem: Still many old style tests. Solution: Convert several tests to new style. (Yegappan Lakshmanan)
author Christian Brabandt <cb@256bit.org>
date Fri, 04 Aug 2017 22:45:04 +0200
parents
children 687ab2b5252b
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/src/testdir/test_scrollbind.vim
@@ -0,0 +1,32 @@
+" Test for 'scrollbind' causing an unexpected scroll of one of the windows.
+func Test_scrollbind()
+  " We don't want the status line to cause problems:
+  set laststatus=0
+  let totalLines = &lines * 20
+  let middle = totalLines / 2
+  new | only
+  for i in range(1, totalLines)
+      call setline(i, 'LINE ' . i)
+  endfor
+  exe string(middle)
+  normal zt
+  normal M
+  aboveleft vert new
+  for i in range(1, totalLines)
+      call setline(i, 'line ' . i)
+  endfor
+  exe string(middle)
+  normal zt
+  normal M
+  " Execute the following two commands at once to reproduce the problem.
+  setl scb | wincmd p
+  setl scb
+  wincmd w
+  let topLineLeft = line('w0')
+  wincmd p
+  let topLineRight = line('w0')
+  setl noscrollbind
+  wincmd p
+  setl noscrollbind
+  call assert_equal(0, topLineLeft - topLineRight)
+endfunc