Mercurial > vim
changeset 14810:d47c8d294d1a v8.1.0417
patch 8.1.0417: several command line arguments are not tested
commit https://github.com/vim/vim/commit/036b09ca78c5516d2b914ebc9494bf7580b8fed8
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Sep 21 12:54:06 2018 +0200
patch 8.1.0417: several command line arguments are not tested
Problem: Several command line arguments are not tested.
Solution: Add tests for -m, -M, -R and -Vfile. (Dominique Pelle,
closes #3458)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Fri, 21 Sep 2018 13:00:07 +0200 |
parents | d705b469b2ad |
children | ae6532037d29 |
files | src/testdir/test_startup.vim src/version.c |
diffstat | 2 files changed, 48 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/testdir/test_startup.vim +++ b/src/testdir/test_startup.vim @@ -194,8 +194,8 @@ func Test_o_arg() " Open 2 windows split vertically. Expect: " - 2 windows " - both windows should have the same or almost the same width - " - sum of both windows width (+ 1 separator) should be equal to the - " number of columns + " - sum of both windows width (+ 1 for the separator) should be equal to + " the number of columns " - both windows should have the same height " - window height (+ 2 for the statusline and Ex command) should be equal " to the number of lines @@ -269,6 +269,48 @@ func Test_V_arg() call assert_match("sourcing \"$VIMRUNTIME[\\/]defaults\.vim\"\r\nline 1: \" The default vimrc file\..* verbose=15\n", out) endfunc +" Test the -V[N]{filename} argument to set the 'verbose' option to N +" and set 'verbosefile' to filename. +func Test_V_file_arg() + if RunVim([], [], ' --clean -X -V2Xverbosefile -c "set verbose? verbosefile?" -cq') + let out = join(readfile('Xverbosefile'), "\n") + call assert_match("sourcing \"$VIMRUNTIME[\\/]defaults\.vim\"\n", out) + call assert_match("\n verbose=2\n", out) + call assert_match("\n verbosefile=Xverbosefile", out) + endif + + call delete('Xverbosefile') +endfunc + +" Test the -m, -M and -R arguments: +" -m resets 'write' +" -M resets 'modifiable' and 'write' +" -R sets 'readonly' +func Test_m_M_R() + let after = [ + \ 'call writefile([&write, &modifiable, &readonly, &updatecount], "Xtestout")', + \ 'qall', + \ ] + if RunVim([], after, '') + let lines = readfile('Xtestout') + call assert_equal(['1', '1', '0', '200'], lines) + endif + if RunVim([], after, '-m') + let lines = readfile('Xtestout') + call assert_equal(['0', '1', '0', '200'], lines) + endif + if RunVim([], after, '-M') + let lines = readfile('Xtestout') + call assert_equal(['0', '0', '0', '200'], lines) + endif + if RunVim([], after, '-R') + let lines = readfile('Xtestout') + call assert_equal(['1', '1', '1', '10000'], lines) + endif + + call delete('Xtestout') +endfunc + " Test the -A, -F and -H arguments (Arabic, Farsi and Hebrew modes). func Test_A_F_H_arg() let after = [ @@ -430,7 +472,7 @@ func Test_zzz_startinsert() call writefile(['123456'], 'Xtestout') let after = [ \ ':startinsert', - \ 'call feedkeys("foobar\<c-o>:wq\<cr>","t")' + \ 'call feedkeys("foobar\<c-o>:wq\<cr>","t")' \ ] if RunVim([], after, 'Xtestout') let lines = readfile('Xtestout') @@ -440,7 +482,7 @@ func Test_zzz_startinsert() call writefile(['123456'], 'Xtestout') let after = [ \ ':startinsert!', - \ 'call feedkeys("foobar\<c-o>:wq\<cr>","t")' + \ 'call feedkeys("foobar\<c-o>:wq\<cr>","t")' \ ] if RunVim([], after, 'Xtestout') let lines = readfile('Xtestout')