changeset 10049:efc8a434f38f v7.4.2296

commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Aug 31 20:33:27 2016 +0200 patch 7.4.2296 Problem: No tests for :undolist and "U" command. Solution: Add tests. (Dominique Pelle)
author Christian Brabandt <cb@256bit.org>
date Wed, 31 Aug 2016 20:45:05 +0200
parents 43efa4f5a8ea
children b702edc4b2b8
files src/testdir/test_undo.vim src/version.c
diffstat 2 files changed, 35 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/testdir/test_undo.vim
+++ b/src/testdir/test_undo.vim
@@ -129,6 +129,39 @@ func Test_undo_del_chars()
   close!
 endfunc
 
+func Test_undolist()
+  new
+  set ul=100
+
+  let a=execute('undolist')
+  call assert_equal("\nNothing to undo", a)
+
+  " 1 leaf (2 changes).
+  call feedkeys('achange1', 'xt')
+  call feedkeys('achange2', 'xt')
+  let a=execute('undolist')
+  call assert_match("^\nnumber changes  when  *saved\n *2  *2 .*$", a)
+
+  " 2 leaves.
+  call feedkeys('u', 'xt')
+  call feedkeys('achange3\<Esc>', 'xt')
+  let a=execute('undolist')
+  call assert_match("^\nnumber changes  when  *saved\n *2  *2  *.*\n *3  *2 .*$", a)
+  close!
+endfunc
+
+func Test_U_command()
+  new
+  set ul=100
+  call feedkeys("achange1\<Esc>", 'xt')
+  call feedkeys("achange2\<Esc>", 'xt')
+  norm! U
+  call assert_equal('', getline(1))
+  norm! U
+  call assert_equal('change1change2', getline(1))
+  close!
+endfunc
+
 func Test_undojoin()
   new
   call feedkeys("Goaaaa\<Esc>", 'xt')
--- a/src/version.c
+++ b/src/version.c
@@ -764,6 +764,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2296,
+/**/
     2295,
 /**/
     2294,