changeset 25771:7dbd3a65a04b v8.2.3421

patch 8.2.3421: a bit of code is not covered by tests Commit: https://github.com/vim/vim/commit/d176ca3dde47c11aae0376c31b7e1ba0939c8c6c Author: Dominique Pelle <dominique.pelle@gmail.com> Date: Thu Sep 9 20:45:34 2021 +0200 patch 8.2.3421: a bit of code is not covered by tests Problem: A bit of code is not covered by tests. Solution: Add a few more test cases. (Dominique Pell?, closes https://github.com/vim/vim/issues/8857)
author Bram Moolenaar <Bram@vim.org>
date Thu, 09 Sep 2021 21:00:04 +0200
parents 32fbd220d18e
children 55753c17b73d
files src/testdir/test_functions.vim src/testdir/test_history.vim src/testdir/test_startup.vim src/version.c
diffstat 4 files changed, 21 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/testdir/test_functions.vim
+++ b/src/testdir/test_functions.vim
@@ -1621,6 +1621,7 @@ func Test_trim()
   call assert_fails('eval trim("  vim  ", " ", [])', 'E745:')
   call assert_fails('eval trim("  vim  ", " ", -1)', 'E475:')
   call assert_fails('eval trim("  vim  ", " ", 3)', 'E475:')
+  call assert_fails('eval trim("  vim  ", 0)', 'E475:')
 
   let chars = join(map(range(1, 0x20) + [0xa0], {n -> n->nr2char()}), '')
   call assert_equal("x", trim(chars . "x" . chars))
--- a/src/testdir/test_history.vim
+++ b/src/testdir/test_history.vim
@@ -98,6 +98,22 @@ function Test_History()
   call assert_fails('call histdel(":", "\\%(")', 'E53:')
 endfunction
 
+function Test_history_truncates_long_entry()
+  " History entry short enough to fit on the screen should not be truncated.
+  call histadd(':', 'echo x' .. repeat('y', &columns - 17) .. 'z')
+  let a = execute('history : -1')
+
+  call assert_match("^\n      #  cmd history\n"
+        \        .. "> *\\d\\+  echo x" .. repeat('y', &columns - 17) ..  'z$', a)
+
+  " Long history entry should be truncated to fit on the screen, with, '...'
+  " inserted in the string to indicate the that there is truncation.
+  call histadd(':', 'echo x' .. repeat('y', &columns - 16) .. 'z')
+  let a = execute('history : -1')
+  call assert_match("^\n      #  cmd history\n"
+        \        .. ">  *\\d\\+  echo xy\\+\.\.\.y\\+z$", a)
+endfunction
+
 function Test_Search_history_window()
   new
   call setline(1, ['a', 'b', 'a', 'b'])
--- a/src/testdir/test_startup.vim
+++ b/src/testdir/test_startup.vim
@@ -617,7 +617,7 @@ func Test_invalid_args()
   call assert_equal('More info with: "vim -h"',       out[2])
 
   if has('quickfix')
-    " Detect invalid repeated arguments '-t foo -t foo", '-q foo -q foo'.
+    " Detect invalid repeated arguments '-t foo -t foo', '-q foo -q foo'.
     for opt in ['-t', '-q']
       let out = split(system(GetVimCommand() .. repeat(' ' .. opt .. ' foo', 2)), "\n")
       call assert_equal(1, v:shell_error)
@@ -863,7 +863,7 @@ func Test_t_arg()
   call writefile(['    first', '    second', '    third'], 'Xfile1')
 
   for t_arg in ['-t second', '-tsecond']
-    if RunVim(before, after, '-t second')
+    if RunVim(before, after, t_arg)
       call assert_equal(['Xfile1:L2C5'], readfile('Xtestout'), t_arg)
       call delete('Xtestout')
     endif
--- a/src/version.c
+++ b/src/version.c
@@ -756,6 +756,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    3421,
+/**/
     3420,
 /**/
     3419,