vim-patch:9.0.1315: escaping for completion of map command not properly tested

Problem:    Escaping for completion of map command not properly tested.
Solution:   Add a few test cases. (closes vim/vim#12009)

c3a26c6bff
This commit is contained in:
zeertzjq 2023-02-18 06:50:58 +08:00
parent 75dab3cf07
commit afe34d92a7
2 changed files with 15 additions and 4 deletions

View File

@ -330,17 +330,21 @@ func Test_map_completion()
call assert_equal('"map <Left>', getreg(':'))
call feedkeys(":map <A-Left>\<Tab>\<Home>\"\<CR>", 'xt')
call assert_equal("\"map <A-Left>\<Tab>", getreg(':'))
call feedkeys(":map <M-Left>\<Tab>\<Home>\"\<CR>", 'xt')
call assert_equal("\"map <M-Left>x", getreg(':'))
unmap ,f
unmap ,g
unmap <Left>
unmap <A-Left>x
set cpo-=< cpo-=B cpo-=k
set cpo-=< cpo-=k
map <Left> left
call feedkeys(":map <L\<Tab>\<Home>\"\<CR>", 'xt')
call assert_equal('"map <Left>', getreg(':'))
call feedkeys(":map <M\<Tab>\<Home>\"\<CR>", 'xt')
call assert_equal("\"map <M\<Tab>", getreg(':'))
call feedkeys(":map \<C-V>\<C-V><M\<Tab>\<Home>\"\<CR>", 'xt')
call assert_equal("\"map \<C-V><Middle>x", getreg(':'))
unmap <Left>
" set cpo+=<

View File

@ -68,15 +68,20 @@ endfunc
func Test_cpo_B()
let save_cpo = &cpo
new
imap <buffer> x<Bslash>k Test
set cpo-=B
iabbr <buffer> abc ab\<BS>d
exe "normal iabc "
call assert_equal('ab<BS>d ', getline(1))
call feedkeys(":imap <buffer> x\<C-A>\<C-B>\"\<CR>", 'tx')
call assert_equal('"imap <buffer> x\\k', @:)
%d
set cpo+=B
iabbr <buffer> abc ab\<BS>d
exe "normal iabc "
call assert_equal('abd ', getline(1))
call feedkeys(":imap <buffer> x\<C-A>\<C-B>\"\<CR>", 'tx')
call assert_equal('"imap <buffer> x\k', @:)
close!
let &cpo = save_cpo
endfunc
@ -195,7 +200,8 @@ func Test_cpo_f()
set cpo+=f
read test_cpoptions.vim
call assert_equal('test_cpoptions.vim', @%)
close!
bwipe!
let &cpo = save_cpo
endfunc
@ -428,7 +434,7 @@ func Test_cpo_O()
let &cpo = save_cpo
endfunc
" Test for the 'p' flag in 'cpo' is in the test_lispwords.vim file.
" Test for the 'p' flag in 'cpo' is in the test_lispindent.vim file.
" Test for the 'P' flag in 'cpo' (appending to a file sets the current file
" name)
@ -444,7 +450,8 @@ func Test_cpo_P()
set cpo+=P
write >> XfileCpoP
call assert_equal('XfileCpoP', @%)
close!
bwipe!
call delete('XfileCpoP')
let &cpo = save_cpo
endfunc