]> granicus.if.org Git - vim/commitdiff
patch 8.1.1179: no test for mouse clicks in the fold column v8.1.1179
authorBram Moolenaar <Bram@vim.org>
Wed, 17 Apr 2019 14:33:46 +0000 (16:33 +0200)
committerBram Moolenaar <Bram@vim.org>
Wed, 17 Apr 2019 14:33:46 +0000 (16:33 +0200)
Problem:    No test for mouse clicks in the fold column.
Solution:   Add a test. (Dominique Pelle, closes #4261)

src/testdir/test_termcodes.vim
src/version.c

index 7fff535d1bfde8e33d0d3bdd9a6e175e8d029a94..578dacf96233ad20a99c3a7bd22b58b3f91f37bd 100644 (file)
@@ -395,3 +395,54 @@ func Test_xterm_mouse_double_click_to_create_tab()
   let &ttymouse = save_ttymouse
   set mousetime&
 endfunc
+
+func Test_xterm_mouse_click_in_fold_columns()
+  new
+  let save_mouse = &mouse
+  let save_term = &term
+  let save_ttymouse = &ttymouse
+  let save_foldcolumn = &foldcolumn
+  set mouse=a term=xterm foldcolumn=3
+
+  " Create 2 nested folds.
+  call setline(1, range(1, 7))
+  2,6fold
+  norm! zR
+  4,5fold
+  call assert_equal([-1, -1, -1, 4, 4, -1, -1],
+        \           map(range(1, 7), 'foldclosed(v:val)'))
+
+  " Click in "+" of inner fold in foldcolumn should open it.
+  redraw
+  let row = 4
+  let col = 2
+  call MouseLeftClick(row, col)
+  call MouseLeftRelease(row, col)
+  call assert_equal([-1, -1, -1, -1, -1, -1, -1],
+        \           map(range(1, 7), 'foldclosed(v:val)'))
+
+  " Click in "-" of outer fold in foldcolumn should close it.
+  redraw
+  let row = 2
+  let col = 1
+  call MouseLeftClick(row, col)
+  call MouseLeftRelease(row, col)
+  call assert_equal([-1, 2, 2, 2, 2, 2, -1],
+        \           map(range(1, 7), 'foldclosed(v:val)'))
+  norm! zR
+
+  " Click in "|" of inner fold in foldcolumn should close it.
+  redraw
+  let row = 5
+  let col = 2
+  call MouseLeftClick(row, col)
+  call MouseLeftRelease(row, col)
+  call assert_equal([-1, -1, -1, 4, 4, -1, -1],
+        \           map(range(1, 7), 'foldclosed(v:val)'))
+
+  let &foldcolumn = save_foldcolumn
+  let &ttymouse = save_ttymouse
+  let &term = save_term
+  let &mouse = save_mouse
+  bwipe!
+endfunc
index 585f2fd3992933b8687c96def9bc65b969a22d16..87a4e47c58738742639bef60874a3e3333bfda4d 100644 (file)
@@ -771,6 +771,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1179,
 /**/
     1178,
 /**/