diff src/testdir/test_arglist.vim @ 13732:8ca1da2a043b v8.0.1738

patch 8.0.1738: ":args" output is hard to read commit https://github.com/vim/vim/commit/5d69da462f584a3aefb3427b127334bf9af3a4b0 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Apr 20 22:01:41 2018 +0200 patch 8.0.1738: ":args" output is hard to read Problem: ":args" output is hard to read. Solution: Make columns with the names if the output is more than one line.
author Christian Brabandt <cb@256bit.org>
date Fri, 20 Apr 2018 22:15:06 +0200
parents 03a6aeea2096
children 3be5e8306a3e
line wrap: on
line diff
--- a/src/testdir/test_arglist.vim
+++ b/src/testdir/test_arglist.vim
@@ -122,9 +122,9 @@ func Test_argument()
   call assert_equal(['d', 'c', 'b', 'a', 'c'], g:buffers)
 
   redir => result
-  ar
+  args
   redir END
-  call assert_true(result =~# 'a b \[c] d')
+  call assert_equal('a   b   [c] d', trim(result))
 
   .argd
   call assert_equal(['a', 'b', 'd'], argv())
@@ -170,6 +170,34 @@ func Test_argument()
   call assert_fails('argument', 'E163:')
 endfunc
 
+func Test_list_arguments()
+  " Clean the argument list
+  arga a | %argd
+
+  " four args half the screen width makes two lines with two columns
+  let aarg = repeat('a', &columns / 2 - 4)
+  let barg = repeat('b', &columns / 2 - 4)
+  let carg = repeat('c', &columns / 2 - 4)
+  let darg = repeat('d', &columns / 2 - 4)
+  exe 'argadd ' aarg barg carg darg
+
+  redir => result
+  args
+  redir END
+  call assert_match('\[' . aarg . '] \+' . carg . '\n' . barg . ' \+' . darg, trim(result))
+
+  " if one arg is longer than half the screen make one column
+  exe 'argdel' aarg
+  let aarg = repeat('a', &columns / 2 + 2)
+  exe '0argadd' aarg
+  redir => result
+  args
+  redir END
+  call assert_match(aarg . '\n\[' . barg . ']\n' . carg . '\n' . darg, trim(result))
+
+  %argdelete
+endfunc
+
 " Test for 0argadd and 0argedit
 " Ported from the test_argument_0count.in test script
 func Test_zero_argadd()