]> granicus.if.org Git - vim/commitdiff
patch 7.4.2296 v7.4.2296
authorBram Moolenaar <Bram@vim.org>
Wed, 31 Aug 2016 18:33:27 +0000 (20:33 +0200)
committerBram Moolenaar <Bram@vim.org>
Wed, 31 Aug 2016 18:33:27 +0000 (20:33 +0200)
Problem:    No tests for :undolist and "U" command.
Solution:   Add tests. (Dominique Pelle)

src/testdir/test_undo.vim
src/version.c

index e521e354075de4e81aa2415df189561265a99b25..fb1cdc836af1b52c5ed77cb60b2c56bbbf7fb0bf 100644 (file)
@@ -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')
index f0f9c827fba7470653190113e8408a9be2c1fb81..95eec668fdf727176462a879fbb5939b55c7c6d3 100644 (file)
@@ -763,6 +763,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    2296,
 /**/
     2295,
 /**/