aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-04-10 18:45:11 +0800
committerzeertzjq <zeertzjq@outlook.com>2022-04-10 18:45:16 +0800
commit381f8f86da4bf5b24fb993eac281dffd2a2bcd1e (patch)
tree25a3fefe4d50f84fd93476bc2b7fd876ad816c03 /src
parent263a7fde35f2341f526a536690122b927300021a (diff)
downloadrneovim-381f8f86da4bf5b24fb993eac281dffd2a2bcd1e.tar.gz
rneovim-381f8f86da4bf5b24fb993eac281dffd2a2bcd1e.tar.bz2
rneovim-381f8f86da4bf5b24fb993eac281dffd2a2bcd1e.zip
vim-patch:8.2.4728: no test that v:event cannot be modified
Problem: No test that v:event cannot be modified. Solution: Add a test. (closes vim/vim#10139) https://github.com/vim/vim/commit/021996ffaa933d9dc0c3553ca01de93fbf3d522b
Diffstat (limited to 'src')
-rw-r--r--src/nvim/testdir/test_autocmd.vim18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/nvim/testdir/test_autocmd.vim b/src/nvim/testdir/test_autocmd.vim
index c1a120efa4..e3362cd28f 100644
--- a/src/nvim/testdir/test_autocmd.vim
+++ b/src/nvim/testdir/test_autocmd.vim
@@ -2661,5 +2661,23 @@ func Test_bufwipeout_changes_window()
%bwipe!
endfunc
+func Test_v_event_readonly()
+ autocmd CompleteChanged * let v:event.width = 0
+ call assert_fails("normal! i\<C-X>\<C-V>", 'E46:')
+ au! CompleteChanged
+
+ autocmd DirChangedPre * let v:event.directory = ''
+ call assert_fails('cd .', 'E46:')
+ au! DirChangedPre
+
+ autocmd ModeChanged * let v:event.new_mode = ''
+ call assert_fails('normal! cc', 'E46:')
+ au! ModeChanged
+
+ autocmd TextYankPost * let v:event.operator = ''
+ call assert_fails('normal! yy', 'E46:')
+ au! TextYankPost
+endfunc
+
" vim: shiftwidth=2 sts=2 expandtab