# HG changeset patch # User Bram Moolenaar # Date 1608381903 -3600 # Node ID 990466a75d3c3ea7417596d11f51c253e8bc27ba # Parent decb2ef05c9e252314024bd8cbd892c7e5c0e7b7 patch 8.2.2161: arguments -T and -x not tested yet Commit: https://github.com/vim/vim/commit/1f33e0a7c4cd278158b37f91a2aa44f0bcd1f21a Author: Bram Moolenaar Date: Sat Dec 19 13:32:07 2020 +0100 patch 8.2.2161: arguments -T and -x not tested yet Problem: Arguments -T and -x not tested yet. Solution: Add a test. (Dominique Pell?, closes https://github.com/vim/vim/issues/7490 diff --git a/src/testdir/test_startup.vim b/src/testdir/test_startup.vim --- a/src/testdir/test_startup.vim +++ b/src/testdir/test_startup.vim @@ -741,6 +741,53 @@ func Test_t_arg() call delete('Xfile1') endfunc +" Test the '-T' argument which sets the 'term' option. +func Test_T_arg() + CheckNotGui + let after =<< trim [CODE] + call writefile([&term], "Xtest_T_arg") + qall + [CODE] + + for t in ['builtin_dumb', 'builtin_ansi'] + if RunVim([], after, '-T ' .. t) + let lines = readfile('Xtest_T_arg') + call assert_equal([t], lines) + endif + endfor + + call delete('Xtest_T_arg') +endfunc + +" Test the '-x' argument to read/write encrypted files. +func Test_x_arg() + CheckRunVimInTerminal + CheckFeature cryptv + + " Create an encrypted file Xtest_x_arg. + let buf = RunVimInTerminal('-n -x Xtest_x_arg', #{rows: 10, wait_for_ruler: 0}) + call WaitForAssert({-> assert_match('^Enter encryption key: ', term_getline(buf, 10))}) + call term_sendkeys(buf, "foo\n") + call WaitForAssert({-> assert_match('^Enter same key again: ', term_getline(buf, 10))}) + call term_sendkeys(buf, "foo\n") + call WaitForAssert({-> assert_match(' All$', term_getline(buf, 10))}) + call term_sendkeys(buf, "itest\:w\") + call WaitForAssert({-> assert_match('"Xtest_x_arg" \[New\]\[blowfish2\] 1L, 5B written', + \ term_getline(buf, 10))}) + call StopVimInTerminal(buf) + + " Read the encrypted file and check that it contains the expected content "test" + let buf = RunVimInTerminal('-n -x Xtest_x_arg', #{rows: 10, wait_for_ruler: 0}) + call WaitForAssert({-> assert_match('^Enter encryption key: ', term_getline(buf, 10))}) + call term_sendkeys(buf, "foo\n") + call WaitForAssert({-> assert_match('^Enter same key again: ', term_getline(buf, 10))}) + call term_sendkeys(buf, "foo\n") + call WaitForAssert({-> assert_match('^test', term_getline(buf, 1))}) + call StopVimInTerminal(buf) + + call delete('Xtest_x_arg') +endfunc + " Test for entering the insert mode on startup func Test_start_insertmode() let before =<< trim [CODE] diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -751,6 +751,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 2161, +/**/ 2160, /**/ 2159,