diff options
| author | zeertzjq <zeertzjq@outlook.com> | 2022-07-23 14:18:43 +0800 |
|---|---|---|
| committer | zeertzjq <zeertzjq@outlook.com> | 2022-07-23 14:22:08 +0800 |
| commit | 264791925a76412ed9109028d0d694f7847249be (patch) | |
| tree | 0a65d6dc02c9b644a0111a2e7c5b87aa0f9742de /src/nvim/testdir/test_input.vim | |
| parent | d0ced2a127ab3974deaefcfab214b564b1ef48e7 (diff) | |
| download | rneovim-264791925a76412ed9109028d0d694f7847249be.tar.gz rneovim-264791925a76412ed9109028d0d694f7847249be.tar.bz2 rneovim-264791925a76412ed9109028d0d694f7847249be.zip | |
vim-patch:9.0.0059: test file has wrong name
Problem: Test file has wrong name.
Solution: Rename the file. Various small fixes. (closes vim/vim#10674)
https://github.com/vim/vim/commit/bb404f5ad5ec909318bc24e5b82e4ed7b87ba8f4
Diffstat (limited to 'src/nvim/testdir/test_input.vim')
| -rw-r--r-- | src/nvim/testdir/test_input.vim | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/src/nvim/testdir/test_input.vim b/src/nvim/testdir/test_input.vim new file mode 100644 index 0000000000..3b1e2eb2df --- /dev/null +++ b/src/nvim/testdir/test_input.vim @@ -0,0 +1,61 @@ +" Tests for character input and feedkeys() function. + +func Test_feedkeys_x_with_empty_string() + new + call feedkeys("ifoo\<Esc>") + call assert_equal('', getline('.')) + call feedkeys('', 'x') + call assert_equal('foo', getline('.')) + + " check it goes back to normal mode immediately. + call feedkeys('i', 'x') + call assert_equal('foo', getline('.')) + quit! +endfunc + +func Test_feedkeys_with_abbreviation() + new + inoreabbrev trigger value + call feedkeys("atrigger ", 'x') + call feedkeys("atrigger ", 'x') + call assert_equal('value value ', getline(1)) + bwipe! + iunabbrev trigger +endfunc + +func Test_feedkeys_escape_special() + nnoremap … <Cmd>let g:got_ellipsis += 1<CR> + call feedkeys('…', 't') + call assert_equal('…', getcharstr()) + let g:got_ellipsis = 0 + call feedkeys('…', 'xt') + call assert_equal(1, g:got_ellipsis) + unlet g:got_ellipsis + nunmap … +endfunc + +func Test_input_simplify_ctrl_at() + new + " feeding unsimplified CTRL-@ should still trigger i_CTRL-@ + call feedkeys("ifoo\<Esc>A\<*C-@>x", 'xt') + call assert_equal('foofo', getline(1)) + bw! +endfunc + +func Test_input_simplify_noremap() + call feedkeys("i\<*C-M>", 'nx') + call assert_equal('', getline(1)) + call assert_equal([0, 2, 1, 0, 1], getcurpos()) + bw! +endfunc + +func Test_input_simplify_timedout() + inoremap <C-M>a b + call feedkeys("i\<*C-M>", 'xt') + call assert_equal('', getline(1)) + call assert_equal([0, 2, 1, 0, 1], getcurpos()) + iunmap <C-M>a + bw! +endfunc + +" vim: shiftwidth=2 sts=2 expandtab |