aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-05-03 06:44:14 +0800
committerzeertzjq <zeertzjq@outlook.com>2022-05-03 06:44:14 +0800
commit15602a7ce49a2f39666aa6a4f3289683835e83dd (patch)
treebff933e965afcb939aaacdad6b44f00eae9a25cf
parent27149e0071c3fa38c81526f63a997bedfd6e2be8 (diff)
downloadrneovim-15602a7ce49a2f39666aa6a4f3289683835e83dd.tar.gz
rneovim-15602a7ce49a2f39666aa6a4f3289683835e83dd.tar.bz2
rneovim-15602a7ce49a2f39666aa6a4f3289683835e83dd.zip
test: add more tests for K_SPECIAL escaping in <Cmd> mapping
-rw-r--r--test/functional/ex_cmds/cmd_map_spec.lua13
1 files changed, 10 insertions, 3 deletions
diff --git a/test/functional/ex_cmds/cmd_map_spec.lua b/test/functional/ex_cmds/cmd_map_spec.lua
index 42e97757db..919d167712 100644
--- a/test/functional/ex_cmds/cmd_map_spec.lua
+++ b/test/functional/ex_cmds/cmd_map_spec.lua
@@ -136,10 +136,17 @@ describe('mappings with <Cmd>', function()
]])
end)
- it('handles character containing K_SPECIAL (0x80) byte correctly', function()
- command([[noremap <F3> <Cmd>let g:str = '‥'<CR>]])
+ it('handles string containing K_SPECIAL (0x80) bytes correctly', function()
+ command([[noremap <F3> <Cmd>let g:str = 'foo…bar'<CR>]])
feed('<F3>')
- eq('‥', eval('g:str'))
+ eq('foo…bar', eval('g:str'))
+ local str = eval([["foo\<D-…>bar"]])
+ command([[noremap <F3> <Cmd>let g:str = ']]..str..[['<CR>]])
+ feed('<F3>')
+ eq(str, eval('g:str'))
+ command([[noremap <F3> <Cmd>let g:str = 'foo<D-…>bar'<CR>]])
+ feed('<F3>')
+ eq(str, eval('g:str'))
end)
it('works in various modes and sees correct `mode()` value', function()