diff options
Diffstat (limited to 'src/testdir')
-rw-r--r-- | src/testdir/dumps/Test_vim9_no_redraw.dump | 6 | ||||
-rw-r--r-- | src/testdir/test_vim9_script.vim | 31 |
2 files changed, 37 insertions, 0 deletions
diff --git a/src/testdir/dumps/Test_vim9_no_redraw.dump b/src/testdir/dumps/Test_vim9_no_redraw.dump new file mode 100644 index 000000000..1d77a08d0 --- /dev/null +++ b/src/testdir/dumps/Test_vim9_no_redraw.dump @@ -0,0 +1,6 @@ +|s+0&#ffffff0|o+0&#e0e0e08|m|e| |t|e|x|t| | +0&#ffffff0@64 +|~+0#4040ff13&| @73 +|~| @73 +|~| @73 +|~| @73 +|:+0#0000000&|'|<|,|'|>> @68 diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim index 32312b0a2..58a72efbb 100644 --- a/src/testdir/test_vim9_script.vim +++ b/src/testdir/test_vim9_script.vim @@ -5,6 +5,7 @@ source term_util.vim source view_util.vim source vim9.vim source shared.vim +source screendump.vim def Test_range_only() new @@ -3338,6 +3339,36 @@ def Test_restoring_cpo() set cpo&vim enddef +def Test_no_redraw_when_restoring_cpo() + CheckScreendump + + var lines =<< trim END + vim9script + def script#func() + enddef + END + mkdir('Xdir/autoload', 'p') + writefile(lines, 'Xdir/autoload/script.vim') + + lines =<< trim END + vim9script + set cpo+=M + exe 'set rtp^=' .. getcwd() .. '/Xdir' + au CmdlineEnter : ++once timer_start(0, () => script#func()) + setline(1, 'some text') + END + writefile(lines, 'XTest_redraw_cpo') + var buf = RunVimInTerminal('-S XTest_redraw_cpo', {'rows': 6}) + term_sendkeys(buf, "V:") + VerifyScreenDump(buf, 'Test_vim9_no_redraw', {}) + + # clean up + term_sendkeys(buf, "\<Esc>u") + StopVimInTerminal(buf) + delete('XTest_redraw_cpo') + delete('Xdir', 'rf') +enddef + def Test_unset_any_variable() var lines =<< trim END |