From 8560e6cf9797ea1d55ecaea6bf8ee8ec783c291a Mon Sep 17 00:00:00 2001 From: Yegappan Lakshmanan Date: Tue, 16 Apr 2024 22:18:15 +0200 Subject: [PATCH] patch 9.1.0339: tests: xdg test uses screen dumps Problem: tests: xdg test uses screen dumps Solution: Convert screen dump to normal test (Yegappan Lakshmanan) closes: #14564 Signed-off-by: Yegappan Lakshmanan Signed-off-by: Christian Brabandt --- src/testdir/dumps/Test_xdg_1.dump | 20 ------ src/testdir/dumps/Test_xdg_2.dump | 20 ------ src/testdir/dumps/Test_xdg_3.dump | 20 ------ src/testdir/dumps/Test_xdg_4.dump | 20 ------ src/testdir/test_xdg.vim | 112 ++++++++++++++++-------------- src/version.c | 2 + 6 files changed, 60 insertions(+), 134 deletions(-) delete mode 100644 src/testdir/dumps/Test_xdg_1.dump delete mode 100644 src/testdir/dumps/Test_xdg_2.dump delete mode 100644 src/testdir/dumps/Test_xdg_3.dump delete mode 100644 src/testdir/dumps/Test_xdg_4.dump diff --git a/src/testdir/dumps/Test_xdg_1.dump b/src/testdir/dumps/Test_xdg_1.dump deleted file mode 100644 index 4e1d7ebd45795..0000000000000 --- a/src/testdir/dumps/Test_xdg_1.dump +++ /dev/null @@ -1,20 +0,0 @@ -|~+0#4040ff13#ffffff0| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|r+0#0000000&|c|_|o|n|e| @16|o|n|e| @48 -|r|c| @20|.|v|i|m|r|c| @45 -|P+0#00e0003&|r|e|s@1| |E|N|T|E|R| |o|r| |t|y|p|e| |c|o|m@1|a|n|d| |t|o| |c|o|n|t|i|n|u|e> +0#0000000&@35 diff --git a/src/testdir/dumps/Test_xdg_2.dump b/src/testdir/dumps/Test_xdg_2.dump deleted file mode 100644 index ebd3a632c9f2f..0000000000000 --- a/src/testdir/dumps/Test_xdg_2.dump +++ /dev/null @@ -1,20 +0,0 @@ -|~+0#4040ff13#ffffff0| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|r+0#0000000&|c|_|t|w|o| @16|t|w|o| @48 -|r|c| @20|.|v|i|m|/|v|i|m|r|c| @41 -|P+0#00e0003&|r|e|s@1| |E|N|T|E|R| |o|r| |t|y|p|e| |c|o|m@1|a|n|d| |t|o| |c|o|n|t|i|n|u|e> +0#0000000&@35 diff --git a/src/testdir/dumps/Test_xdg_3.dump b/src/testdir/dumps/Test_xdg_3.dump deleted file mode 100644 index 72d0fbdd20df5..0000000000000 --- a/src/testdir/dumps/Test_xdg_3.dump +++ /dev/null @@ -1,20 +0,0 @@ -|~+0#4040ff13#ffffff0| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|r+0#0000000&|c|_|t|h|r|e@1| @14|t|h|r|e@1| @46 -|r|c| @20|.|c|o|n|f|i|g|/|v|i|m|/|v|i|m|r|c| @34 -|P+0#00e0003&|r|e|s@1| |E|N|T|E|R| |o|r| |t|y|p|e| |c|o|m@1|a|n|d| |t|o| |c|o|n|t|i|n|u|e> +0#0000000&@35 diff --git a/src/testdir/dumps/Test_xdg_4.dump b/src/testdir/dumps/Test_xdg_4.dump deleted file mode 100644 index 2a574a323cdfd..0000000000000 --- a/src/testdir/dumps/Test_xdg_4.dump +++ /dev/null @@ -1,20 +0,0 @@ -|~+0#4040ff13#ffffff0| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|~| @73 -|r+0#0000000&|c|_|f|o|u|r| @15|f|o|u|r| @47 -|r|c| @20|x|d|g|/|v|i|m|/|v|i|m|r|c| @38 -|P+0#00e0003&|r|e|s@1| |E|N|T|E|R| |o|r| |t|y|p|e| |c|o|m@1|a|n|d| |t|o| |c|o|n|t|i|n|u|e> +0#0000000&@35 diff --git a/src/testdir/test_xdg.vim b/src/testdir/test_xdg.vim index da98a2cfa7611..557864e257595 100644 --- a/src/testdir/test_xdg.vim +++ b/src/testdir/test_xdg.vim @@ -1,12 +1,9 @@ " Tests for the XDG feature source check.vim -CheckFeature terminal source shared.vim -source screendump.vim source mouse.vim -source term_util.vim func s:get_rcs() let rcs = { @@ -77,63 +74,70 @@ func Test_xdg_runtime_files() call writefile(file3, rc3) call writefile(file4, rc4) - let rows = 20 - let buf = RunVimInTerminal('', #{rows: rows, no_clean: 1}) - call TermWait(buf) - call term_sendkeys(buf, ":echo \$MYVIMRC[-30:]\") - call WaitForAssert({-> assert_match('XfakeHOME/\.vimrc', term_getline(buf, rows))}) - call term_sendkeys(buf, ":call filter(g:, {idx, _ -> idx =~ '^rc'})\") - call TermWait(buf) - call term_sendkeys(buf, ":redraw!\") - call TermWait(buf) - call term_sendkeys(buf, ":let g:\") - call VerifyScreenDump(buf, 'Test_xdg_1', {}) - call StopVimInTerminal(buf) + " Get the Vim command to run without the '-u NONE' argument + let vimcmd = substitute(GetVimCommand(), '-u NONE', '', '') + + " Test for ~/.vimrc + let lines =<< trim END + call assert_match('XfakeHOME/\.vimrc', $MYVIMRC) + call filter(g:, {idx, _ -> idx =~ '^rc'}) + call assert_equal(#{rc_one: 'one', rc: '.vimrc'}, g:) + call writefile(v:errors, 'Xresult') + quit + END + call writefile(lines, 'Xscript', 'D') + call system($'{vimcmd} -S Xscript') + call assert_equal([], readfile('Xresult')) + call delete(rc1) - bw - - let buf = RunVimInTerminal('', #{rows: rows, no_clean: 1}) - call TermWait(buf) - call term_sendkeys(buf, ":echo \$MYVIMRC[-30:]\") - call WaitForAssert({-> assert_match('XfakeHOME/\.vim/vimrc', term_getline(buf, rows))}) - call term_sendkeys(buf, ":call filter(g:, {idx, _ -> idx =~ '^rc'})\") - call TermWait(buf) - call term_sendkeys(buf, ":redraw!\") - call TermWait(buf) - call term_sendkeys(buf, ":let g:\") - call VerifyScreenDump(buf, 'Test_xdg_2', {}) - call StopVimInTerminal(buf) + + " Test for ~/.vim/vimrc + let lines =<< trim END + call assert_match('XfakeHOME/\.vim/vimrc', $MYVIMRC) + call filter(g:, {idx, _ -> idx =~ '^rc'}) + call assert_equal(#{rc_two: 'two', rc: '.vim/vimrc'}, g:) + call writefile(v:errors, 'Xresult') + quit + END + call writefile(lines, 'Xscript', 'D') + call system($'{vimcmd} -S Xscript') + call assert_equal([], readfile('Xresult')) + call delete(rc2) - bw - - let buf = RunVimInTerminal('', #{rows: rows, no_clean: 1}) - call TermWait(buf) - call term_sendkeys(buf, ":echo \$MYVIMRC[-30:]\") - call WaitForAssert({-> assert_match('XfakeHOME/\.config/vim/vimrc', term_getline(buf, rows))}) - call term_sendkeys(buf, ":call filter(g:, {idx, _ -> idx =~ '^rc'})\") - call TermWait(buf) - call term_sendkeys(buf, ":redraw!\") - call TermWait(buf) - call term_sendkeys(buf, ":let g:\") - call VerifyScreenDump(buf, 'Test_xdg_3', {}) - call StopVimInTerminal(buf) + + " XDG_CONFIG_HOME is set in Github CI runners + unlet $XDG_CONFIG_HOME + + " Test for ~/.config/vim/vimrc + let lines =<< trim END + let msg = $'HOME="{$HOME}", ~="{expand("~")}"' + call assert_match('XfakeHOME/\.config/vim/vimrc', $MYVIMRC, msg) + call filter(g:, {idx, _ -> idx =~ '^rc'}) + call assert_equal(#{rc_three: 'three', rc: '.config/vim/vimrc'}, g:) + call writefile(v:errors, 'Xresult') + quit + END + call writefile(lines, 'Xscript', 'D') + call system($'{vimcmd} -S Xscript') + call assert_equal([], readfile('Xresult')) + call delete(rc3) - bw + " Test for ~/xdg/vim/vimrc let $XDG_CONFIG_HOME=expand('~/xdg/') - let buf = RunVimInTerminal('', #{rows: rows, no_clean: 1}) - call TermWait(buf) - call term_sendkeys(buf, ":redraw!\") - call TermWait(buf) - call term_sendkeys(buf, ":echo \$MYVIMRC[-30:]\") - call WaitForAssert({-> assert_match('XfakeHOME/xdg/vim/vimrc', term_getline(buf, rows))}) - call term_sendkeys(buf, ":call filter(g:, {idx, _ -> idx =~ '^rc'})\") - call TermWait(buf) - call term_sendkeys(buf, ":let g:\") - call VerifyScreenDump(buf, 'Test_xdg_4', {}) - call StopVimInTerminal(buf) + let lines =<< trim END + let msg = $'HOME="{$HOME}", XDG_CONFIG_HOME="{$XDG_CONFIG_HOME}"' + call assert_match('XfakeHOME/xdg/vim/vimrc', $MYVIMRC, msg) + call filter(g:, {idx, _ -> idx =~ '^rc'}) + call assert_equal(#{rc_four: 'four', rc: 'xdg/vim/vimrc'}, g:) + call writefile(v:errors, 'Xresult') + quit + END + call writefile(lines, 'Xscript', 'D') + call system($'{vimcmd} -S Xscript') + call assert_equal([], readfile('Xresult')) + call delete(rc4) - bw unlet $XDG_CONFIG_HOME endfunc diff --git a/src/version.c b/src/version.c index d11f80848485c..475f288d03d76 100644 --- a/src/version.c +++ b/src/version.c @@ -704,6 +704,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 339, /**/ 338, /**/