From: Yasuhiro Matsumoto Date: Fri, 1 May 2026 16:01:03 +0000 (+0000) Subject: patch 9.2.0426: tests: still some flaky screendump tests X-Git-Tag: v9.2.0426^0 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cf5d7102b9624f1bf230b6efad22f9bd0b39bd53;p=thirdparty%2Fvim.git patch 9.2.0426: tests: still some flaky screendump tests Problem: tests: still some flaky screendump tests (James McCoy) Solution: Replace flaky VerifyScreenDump checks with assert_* assertions for Test_visual_block_scroll and Test_scrolloffpad_with_folds, and remove the now-unused dump files, mark those tests as flaky (which happened previously for screendump tests automatically) (Yasuhiro Matsumoto). fixes: #20096 related: #20095 Signed-off-by: Yasuhiro Matsumoto Signed-off-by: Christian Brabandt --- diff --git a/src/testdir/dumps/Test_display_visual_block_scroll.dump b/src/testdir/dumps/Test_display_visual_block_scroll.dump deleted file mode 100644 index 36eae0c024..0000000000 --- a/src/testdir/dumps/Test_display_visual_block_scroll.dump +++ /dev/null @@ -1,7 +0,0 @@ -|{+0#0000001#a8a8a8255| | +0#0000000#ffffff0@72 -|}+0#0000001#a8a8a8255| | +0#0000000#ffffff0@72 -|{+0#0000001#a8a8a8255| | +0#0000000#ffffff0@72 -|f+0#0000001#a8a8a8255| | +0#0000000#ffffff0@72 ->g| +0#0000001#a8a8a8255| +0#0000000#ffffff0@72 -|}| @73 -|-+2&&@1| |V|I|S|U|A|L| |L|I|N|E| |-@1| +0&&@29|7| @8|1@1|,|1| @9|B|o|t| diff --git a/src/testdir/dumps/Test_scrolloffpad_folds_1.dump b/src/testdir/dumps/Test_scrolloffpad_folds_1.dump deleted file mode 100644 index 1c64333006..0000000000 --- a/src/testdir/dumps/Test_scrolloffpad_folds_1.dump +++ /dev/null @@ -1,20 +0,0 @@ -|l+0&#ffffff0|i|n|e| |1@2| @69 -|l|i|n|e| |1@1|2| @69 -|l|i|n|e| |1@1|3| @69 -|l|i|n|e| |1@1|4| @69 -|l|i|n|e| |1@1|5| @69 -|l|i|n|e| |1@1|6| @69 -|l|i|n|e| |1@1|7| @69 -|l|i|n|e| |1@1|8| @69 -|l|i|n|e| |1@1|9| @69 ->l|i|n|e| |1|2|0| @69 -|~+0#4040ff13&| @76 -|~| @76 -|~| @76 -|~| @76 -|~| @76 -|~| @76 -|~| @76 -|~| @76 -|~| @76 -| +0#0000000&@59|1|2|0|,|1| @8|B|o|t| diff --git a/src/testdir/dumps/Test_scrolloffpad_folds_2.dump b/src/testdir/dumps/Test_scrolloffpad_folds_2.dump deleted file mode 100644 index 63ac801b4a..0000000000 --- a/src/testdir/dumps/Test_scrolloffpad_folds_2.dump +++ /dev/null @@ -1,20 +0,0 @@ -|l+0&#ffffff0|i|n|e| |5|1| @70 -|l|i|n|e| |5|2| @70 -|l|i|n|e| |5|3| @70 -|l|i|n|e| |5|4| @70 -|l|i|n|e| |5@1| @70 -|l|i|n|e| |5|6| @70 -|l|i|n|e| |5|7| @70 -|l|i|n|e| |5|8| @70 -|l|i|n|e| |5|9| @70 ->++0#0000e05#a8a8a8255|-@1| |5|1| |l|i|n|e|s|:| |l|i|n|e| |6|0|-@56 -|l+0#0000000#ffffff0|i|n|e| |1@2| @69 -|l|i|n|e| |1@1|2| @69 -|l|i|n|e| |1@1|3| @69 -|l|i|n|e| |1@1|4| @69 -|l|i|n|e| |1@1|5| @69 -|l|i|n|e| |1@1|6| @69 -|l|i|n|e| |1@1|7| @69 -|l|i|n|e| |1@1|8| @69 -|l|i|n|e| |1@1|9| @69 -@60|6|0|,|1| @9|9|8|%| diff --git a/src/testdir/dumps/Test_scrolloffpad_folds_3.dump b/src/testdir/dumps/Test_scrolloffpad_folds_3.dump deleted file mode 100644 index 1c64333006..0000000000 --- a/src/testdir/dumps/Test_scrolloffpad_folds_3.dump +++ /dev/null @@ -1,20 +0,0 @@ -|l+0&#ffffff0|i|n|e| |1@2| @69 -|l|i|n|e| |1@1|2| @69 -|l|i|n|e| |1@1|3| @69 -|l|i|n|e| |1@1|4| @69 -|l|i|n|e| |1@1|5| @69 -|l|i|n|e| |1@1|6| @69 -|l|i|n|e| |1@1|7| @69 -|l|i|n|e| |1@1|8| @69 -|l|i|n|e| |1@1|9| @69 ->l|i|n|e| |1|2|0| @69 -|~+0#4040ff13&| @76 -|~| @76 -|~| @76 -|~| @76 -|~| @76 -|~| @76 -|~| @76 -|~| @76 -|~| @76 -| +0#0000000&@59|1|2|0|,|1| @8|B|o|t| diff --git a/src/testdir/test_plugin_matchparen.vim b/src/testdir/test_plugin_matchparen.vim index cc6513bb6f..136d55a31b 100644 --- a/src/testdir/test_plugin_matchparen.vim +++ b/src/testdir/test_plugin_matchparen.vim @@ -8,8 +8,8 @@ source util/screendump.vim " Test for scrolling that modifies buffer during visual block func Test_visual_block_scroll() - CheckScreendump - + CheckRunVimInTerminal + let g:test_is_flaky = 1 let lines =<< trim END source $VIMRUNTIME/plugin/matchparen.vim set scrolloff=1 @@ -23,8 +23,13 @@ func Test_visual_block_scroll() let buf = RunVimInTerminal('-S '.filename, #{rows: 7}) call term_sendkeys(buf, "V\\") - call WaitForAssert({-> assert_match('VISUAL.*\d\+\s\+\d', term_getline(buf, 7))}, 1000) - call VerifyScreenDump(buf, 'Test_display_visual_block_scroll', {}) + call WaitForAssert({-> assert_equal('{', trim(term_getline(buf, 1)))}, 1000) + call assert_equal('}', trim(term_getline(buf, 2))) + call assert_equal('{', trim(term_getline(buf, 3))) + call assert_equal('f', trim(term_getline(buf, 4))) + call assert_equal('g', trim(term_getline(buf, 5))) + call assert_equal('}', trim(term_getline(buf, 6))) + call assert_match('VISUAL LINE .*1,1\s\+Bot', term_getline(buf, 7)) call StopVimInTerminal(buf) endfunc diff --git a/src/testdir/test_scroll_opt.vim b/src/testdir/test_scroll_opt.vim index 4d0e44c2ea..7ee9fa2d27 100644 --- a/src/testdir/test_scroll_opt.vim +++ b/src/testdir/test_scroll_opt.vim @@ -2038,9 +2038,9 @@ func Test_scrolloffpad_diff_eof_filler_behavior() endfunc func Test_scrolloffpad_with_folds() - CheckScreendump CheckRunVimInTerminal CheckFeature folding + let g:test_is_flaky = 1 let save_termwinsize = &termwinsize set termwinsize= @@ -2065,27 +2065,40 @@ func Test_scrolloffpad_with_folds() let buf = RunVimInTerminal('-S XScrolloffpadFolds', #{rows: 20, cols: 78}) - " Case 1: Jump to end-of-file - " With folds present, scrolloffpad should still - " keep the cursor positioned with padding below EOF + " Case 1: Jump to end-of-file. + " With folds present, scrolloffpad should still keep the cursor positioned + " with padding below EOF. call term_sendkeys(buf, "\:\normal! G\") call term_sendkeys(buf, "\") - call TermWait(buf) - call VerifyScreenDump(buf, 'Test_scrolloffpad_folds_1', {}) - - " Case 2: Move to the folded line to ensure the fold is actually in view + call WaitForAssert({-> assert_equal('line 120', trim(term_getline(buf, 10)))}, + \ 1000) + call assert_equal('line 111', trim(term_getline(buf, 1))) + call assert_equal('line 119', trim(term_getline(buf, 9))) + call assert_equal('~', trim(term_getline(buf, 11))) + call assert_match('120,1\s\+Bot', term_getline(buf, 20)) + + " Case 2: Move to the folded line to ensure the fold is actually in view. call term_sendkeys(buf, "\:\normal! 60G\") call term_sendkeys(buf, "\") - call TermWait(buf) - call VerifyScreenDump(buf, 'Test_scrolloffpad_folds_2', {}) - - " Case 3: Close the fold explicitly and go to EOF again - " Behavior should remain stable with closed folds + call WaitForAssert({-> assert_match('^\s*+-- 51 lines: line 60--', + \ term_getline(buf, 10))}, 1000) + call assert_equal('line 51', trim(term_getline(buf, 1))) + call assert_equal('line 59', trim(term_getline(buf, 9))) + call assert_equal('line 111', trim(term_getline(buf, 11))) + call assert_equal('line 119', trim(term_getline(buf, 19))) + call assert_match('60,1\s\+98%', term_getline(buf, 20)) + + " Case 3: Close the fold explicitly and go to EOF again. + " Behavior should remain stable with closed folds. call term_sendkeys(buf, "\:\normal! zc\") call term_sendkeys(buf, "\:\normal! G\") call term_sendkeys(buf, "\") - call TermWait(buf) - call VerifyScreenDump(buf, 'Test_scrolloffpad_folds_3', {}) + call WaitForAssert({-> assert_equal('line 120', trim(term_getline(buf, 10)))}, + \ 1000) + call assert_equal('line 111', trim(term_getline(buf, 1))) + call assert_equal('line 119', trim(term_getline(buf, 9))) + call assert_equal('~', trim(term_getline(buf, 11))) + call assert_match('120,1\s\+Bot', term_getline(buf, 20)) call StopVimInTerminal(buf) let &termwinsize = save_termwinsize diff --git a/src/version.c b/src/version.c index 4108665794..d79705029e 100644 --- a/src/version.c +++ b/src/version.c @@ -729,6 +729,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 426, /**/ 425, /**/