mirror of
https://github.com/neovim/neovim.git
synced 2025-09-06 03:18:16 +00:00
vim-patch:9.0.1460: insufficient testing for getcmdcompltype()
Problem: Insufficient testing for getcmdcompltype().
Solution: Add a few more test cases. (closes vim/vim#12268)
961b2e54bd
This commit is contained in:
@@ -4096,6 +4096,10 @@ static char *get_cmdline_completion(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
set_expand_context(p->xpc);
|
set_expand_context(p->xpc);
|
||||||
|
if (p->xpc->xp_context == EXPAND_UNSUCCESSFUL) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
char *cmd_compl = get_user_cmd_complete(p->xpc, p->xpc->xp_context);
|
char *cmd_compl = get_user_cmd_complete(p->xpc, p->xpc->xp_context);
|
||||||
if (cmd_compl != NULL) {
|
if (cmd_compl != NULL) {
|
||||||
return xstrdup(cmd_compl);
|
return xstrdup(cmd_compl);
|
||||||
|
@@ -3476,16 +3476,23 @@ func Test_cmdline_complete_bang_cmd_argument()
|
|||||||
call assert_equal('"!vim test_cmdline.vim', @:)
|
call assert_equal('"!vim test_cmdline.vim', @:)
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
func Check_completion()
|
func Call_cmd_funcs()
|
||||||
call assert_equal('let a', getcmdline())
|
return string([getcmdpos(), getcmdscreenpos(), getcmdcompltype()])
|
||||||
call assert_equal(6, getcmdpos())
|
|
||||||
call assert_equal(7, getcmdscreenpos())
|
|
||||||
call assert_equal('var', getcmdcompltype())
|
|
||||||
return ''
|
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
func Test_screenpos_and_completion()
|
func Test_screenpos_and_completion()
|
||||||
call feedkeys(":let a\<C-R>=Check_completion()\<CR>\<Esc>", "xt")
|
call assert_equal(0, getcmdpos())
|
||||||
|
call assert_equal(0, getcmdscreenpos())
|
||||||
|
call assert_equal('', getcmdcompltype())
|
||||||
|
|
||||||
|
cnoremap <expr> <F2> string([getcmdpos(), getcmdscreenpos(), getcmdcompltype()])
|
||||||
|
call feedkeys(":let a\<F2>\<C-B>\"\<CR>", "xt")
|
||||||
|
call assert_equal("\"let a[6, 7, 'var']", @:)
|
||||||
|
call feedkeys(":quit \<F2>\<C-B>\"\<CR>", "xt")
|
||||||
|
call assert_equal("\"quit [6, 7, '']", @:)
|
||||||
|
call feedkeys(":nosuchcommand \<F2>\<C-B>\"\<CR>", "xt")
|
||||||
|
call assert_equal("\"nosuchcommand [15, 16, '']", @:)
|
||||||
|
cunmap <F2>
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
func Test_recursive_register()
|
func Test_recursive_register()
|
||||||
|
Reference in New Issue
Block a user