mirror of
https://github.com/neovim/neovim.git
synced 2025-09-28 14:08:32 +00:00
vim-patch:8.0.0301 #7685
Problem: No tests for ":set completion" and various errors of the :set
command.
Solution: Add more :set tests. (Dominique Pelle, closes vim/vim#1440)
698f8b207b
---
Also move test_options from test_alot to Makefile. (That's done upstream
in Vim patch 8.0.0430.)
This commit is contained in:
@@ -77,6 +77,7 @@ NEW_TESTS ?= \
|
||||
test_mksession_utf8.res \
|
||||
test_nested_function.res \
|
||||
test_normal.res \
|
||||
test_options.res \
|
||||
test_profile.res \
|
||||
test_quickfix.res \
|
||||
test_retab.res \
|
||||
|
@@ -21,7 +21,6 @@ source test_lambda.vim
|
||||
source test_menu.vim
|
||||
source test_mapping.vim
|
||||
source test_messages.vim
|
||||
source test_options.vim
|
||||
source test_partial.vim
|
||||
source test_popup.vim
|
||||
source test_regexp_utf8.vim
|
||||
|
@@ -125,6 +125,89 @@ endfunc
|
||||
|
||||
func Test_thesaurus()
|
||||
call Check_dir_option('thesaurus')
|
||||
endfun
|
||||
|
||||
func Test_set_completion()
|
||||
call feedkeys(":set di\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||
call assert_equal('"set dictionary diff diffexpr diffopt digraph directory display', @:)
|
||||
|
||||
" Expand boolan options. When doing :set no<Tab>
|
||||
" vim displays the options names without "no" but completion uses "no...".
|
||||
call feedkeys(":set nodi\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||
call assert_equal('"set nodiff digraph', @:)
|
||||
|
||||
call feedkeys(":set invdi\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||
call assert_equal('"set invdiff digraph', @:)
|
||||
|
||||
" Expand abbreviation of options.
|
||||
call feedkeys(":set ts\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||
call assert_equal('"set tabstop thesaurus', @:)
|
||||
|
||||
" Expand current value
|
||||
call feedkeys(":set fileencodings=\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||
call assert_equal('"set fileencodings=ucs-bom,utf-8,default,latin1', @:)
|
||||
|
||||
call feedkeys(":set fileencodings:\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||
call assert_equal('"set fileencodings:ucs-bom,utf-8,default,latin1', @:)
|
||||
|
||||
" Expand directories.
|
||||
call feedkeys(":set cdpath=./\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||
call assert_match(' ./samples/ ', @:)
|
||||
call assert_notmatch(' ./small.vim ', @:)
|
||||
|
||||
" Expand files and directories.
|
||||
call feedkeys(":set tags=./\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||
call assert_match('./samples/ ./sautest/ ./setup.vim ./shared.vim', @:)
|
||||
|
||||
call feedkeys(":set tags=./\\\\ dif\<C-A>\<C-B>\"\<CR>", 'tx')
|
||||
call assert_equal('"set tags=./\\ diff diffexpr diffopt', @:)
|
||||
endfunc
|
||||
|
||||
func Test_set_errors()
|
||||
call assert_fails('set scroll=-1', 'E49:')
|
||||
call assert_fails('set backupcopy=', 'E474:')
|
||||
call assert_fails('set regexpengine=3', 'E474:')
|
||||
call assert_fails('set history=10001', 'E474:')
|
||||
call assert_fails('set numberwidth=11', 'E474:')
|
||||
call assert_fails('set colorcolumn=-a')
|
||||
call assert_fails('set colorcolumn=a')
|
||||
call assert_fails('set colorcolumn=1,')
|
||||
call assert_fails('set cmdheight=-1', 'E487:')
|
||||
call assert_fails('set cmdwinheight=-1', 'E487:')
|
||||
if has('conceal')
|
||||
call assert_fails('set conceallevel=-1', 'E487:')
|
||||
call assert_fails('set conceallevel=4', 'E474:')
|
||||
endif
|
||||
call assert_fails('set helpheight=-1', 'E487:')
|
||||
call assert_fails('set history=-1', 'E487:')
|
||||
call assert_fails('set report=-1', 'E487:')
|
||||
call assert_fails('set shiftwidth=-1', 'E487:')
|
||||
call assert_fails('set sidescroll=-1', 'E487:')
|
||||
call assert_fails('set tabstop=-1', 'E487:')
|
||||
call assert_fails('set textwidth=-1', 'E487:')
|
||||
call assert_fails('set timeoutlen=-1', 'E487:')
|
||||
call assert_fails('set updatecount=-1', 'E487:')
|
||||
call assert_fails('set updatetime=-1', 'E487:')
|
||||
call assert_fails('set winheight=-1', 'E487:')
|
||||
call assert_fails('set tabstop!', 'E488:')
|
||||
call assert_fails('set xxx', 'E518:')
|
||||
call assert_fails('set beautify?', 'E518:')
|
||||
call assert_fails('set undolevels=x', 'E521:')
|
||||
call assert_fails('set tabstop=', 'E521:')
|
||||
call assert_fails('set comments=-', 'E524:')
|
||||
call assert_fails('set comments=a', 'E525:')
|
||||
call assert_fails('set foldmarker=x', 'E536:')
|
||||
call assert_fails('set commentstring=x', 'E537:')
|
||||
call assert_fails('set complete=x', 'E539:')
|
||||
call assert_fails('set statusline=%{', 'E540:')
|
||||
call assert_fails('set statusline=' . repeat("%p", 81), 'E541:')
|
||||
call assert_fails('set statusline=%(', 'E542:')
|
||||
call assert_fails('set guicursor=x', 'E545:')
|
||||
call assert_fails('set backupext=~ patchmode=~', 'E589:')
|
||||
call assert_fails('set winminheight=10 winheight=9', 'E591:')
|
||||
call assert_fails('set winminwidth=10 winwidth=9', 'E592:')
|
||||
call assert_fails("set showbreak=\x01", 'E595:')
|
||||
call assert_fails('set t_foo=', 'E846:')
|
||||
endfunc
|
||||
|
||||
func Test_complete()
|
||||
|
@@ -1196,7 +1196,7 @@ static const int included_patches[] = {
|
||||
// 304,
|
||||
// 303,
|
||||
302,
|
||||
// 301,
|
||||
301,
|
||||
300,
|
||||
299,
|
||||
298,
|
||||
|
Reference in New Issue
Block a user