aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorckelsel <ckelsel@hotmail.com>2017-12-21 18:31:26 +0800
committerckelsel <ckelsel@hotmail.com>2017-12-21 18:40:10 +0800
commit6c731d33f6729a272c5168d040ee4b86942c599b (patch)
treefa5a484b223e9bcc1f47cdabcb5802a21a3c9d35 /src
parentaa951b14893d8a30ec3bad6fb4b7064ccda16d5c (diff)
downloadrneovim-6c731d33f6729a272c5168d040ee4b86942c599b.tar.gz
rneovim-6c731d33f6729a272c5168d040ee4b86942c599b.tar.bz2
rneovim-6c731d33f6729a272c5168d040ee4b86942c599b.zip
vim-patch:8.0.0314: getcmd*() functions are not tested
Problem: getcmdtype(), getcmdpos() and getcmdline() are not tested. Solution: Add tests. (Yegappan Lakshmanan) https://github.com/vim/vim/commit/65189a1294307abf007faab7385dc0145ba72b06
Diffstat (limited to 'src')
-rw-r--r--src/nvim/testdir/test_cmdline.vim32
-rw-r--r--src/nvim/version.c2
2 files changed, 33 insertions, 1 deletions
diff --git a/src/nvim/testdir/test_cmdline.vim b/src/nvim/testdir/test_cmdline.vim
index ac44e09a5a..dc9790a39c 100644
--- a/src/nvim/testdir/test_cmdline.vim
+++ b/src/nvim/testdir/test_cmdline.vim
@@ -330,4 +330,36 @@ func Test_cmdline_search_range()
bwipe!
endfunc
+" Tests for getcmdline(), getcmdpos() and getcmdtype()
+func Check_cmdline(cmdtype)
+ call assert_equal('MyCmd a', getcmdline())
+ call assert_equal(8, getcmdpos())
+ call assert_equal(a:cmdtype, getcmdtype())
+ return ''
+endfunc
+
+func Test_getcmdtype()
+ call feedkeys(":MyCmd a\<C-R>=Check_cmdline(':')\<CR>\<Esc>", "xt")
+
+ let cmdtype = ''
+ debuggreedy
+ call feedkeys(":debug echo 'test'\<CR>", "t")
+ call feedkeys("let cmdtype = \<C-R>=string(getcmdtype())\<CR>\<CR>", "t")
+ call feedkeys("cont\<CR>", "xt")
+ 0debuggreedy
+ call assert_equal('>', cmdtype)
+
+ call feedkeys("/MyCmd a\<C-R>=Check_cmdline('/')\<CR>\<Esc>", "xt")
+ call feedkeys("?MyCmd a\<C-R>=Check_cmdline('?')\<CR>\<Esc>", "xt")
+
+ call feedkeys(":call input('Answer?')\<CR>", "t")
+ call feedkeys("MyCmd a\<C-R>=Check_cmdline('@')\<CR>\<Esc>", "xt")
+
+ call feedkeys(":insert\<CR>MyCmd a\<C-R>=Check_cmdline('-')\<CR>\<Esc>", "xt")
+
+ cnoremap <expr> <F6> Check_cmdline('=')
+ call feedkeys("a\<C-R>=MyCmd a\<F6>\<Esc>\<Esc>", "xt")
+ cunmap <F6>
+endfunc
+
set cpo&
diff --git a/src/nvim/version.c b/src/nvim/version.c
index 8ab9fc1a4b..26e15e3b15 100644
--- a/src/nvim/version.c
+++ b/src/nvim/version.c
@@ -942,7 +942,7 @@ static const int included_patches[] = {
// 317,
// 316,
// 315,
- // 314,
+ 314,
// 313,
// 312,
311,