mirror of
https://github.com/vim/vim.git
synced 2025-09-23 03:43:49 -04:00
patch 8.0.0861: still many old style tests
Problem: Still many old style tests. Solution: Convert several tests to new style. (Yegappan Lakshmanan)
This commit is contained in:
@@ -2137,6 +2137,7 @@ test_arglist \
|
|||||||
test_crypt \
|
test_crypt \
|
||||||
test_cscope \
|
test_cscope \
|
||||||
test_cursor_func \
|
test_cursor_func \
|
||||||
|
test_curswant \
|
||||||
test_delete \
|
test_delete \
|
||||||
test_diffmode \
|
test_diffmode \
|
||||||
test_digraph \
|
test_digraph \
|
||||||
@@ -2155,6 +2156,7 @@ test_arglist \
|
|||||||
test_farsi \
|
test_farsi \
|
||||||
test_feedkeys \
|
test_feedkeys \
|
||||||
test_file_perm \
|
test_file_perm \
|
||||||
|
test_file_size \
|
||||||
test_fileformat \
|
test_fileformat \
|
||||||
test_filetype \
|
test_filetype \
|
||||||
test_filter_cmd \
|
test_filter_cmd \
|
||||||
@@ -2189,6 +2191,8 @@ test_arglist \
|
|||||||
test_lambda \
|
test_lambda \
|
||||||
test_langmap \
|
test_langmap \
|
||||||
test_largefile \
|
test_largefile \
|
||||||
|
test_let \
|
||||||
|
test_lineending \
|
||||||
test_lispwords \
|
test_lispwords \
|
||||||
test_listlbr \
|
test_listlbr \
|
||||||
test_listlbr_utf8 \
|
test_listlbr_utf8 \
|
||||||
@@ -2233,6 +2237,7 @@ test_arglist \
|
|||||||
test_reltime \
|
test_reltime \
|
||||||
test_retab \
|
test_retab \
|
||||||
test_ruby \
|
test_ruby \
|
||||||
|
test_scrollbind \
|
||||||
test_search \
|
test_search \
|
||||||
test_searchpos \
|
test_searchpos \
|
||||||
test_set \
|
test_set \
|
||||||
|
@@ -18,12 +18,10 @@ SCRIPTS_ALL = \
|
|||||||
test5.out \
|
test5.out \
|
||||||
test7.out \
|
test7.out \
|
||||||
test8.out \
|
test8.out \
|
||||||
test9.out \
|
|
||||||
test14.out \
|
test14.out \
|
||||||
test15.out \
|
test15.out \
|
||||||
test19.out \
|
test19.out \
|
||||||
test20.out \
|
test20.out \
|
||||||
test22.out \
|
|
||||||
test28.out \
|
test28.out \
|
||||||
test29.out \
|
test29.out \
|
||||||
test31.out \
|
test31.out \
|
||||||
@@ -52,18 +50,14 @@ SCRIPTS_ALL = \
|
|||||||
test69.out \
|
test69.out \
|
||||||
test70.out \
|
test70.out \
|
||||||
test73.out \
|
test73.out \
|
||||||
test77.out \
|
|
||||||
test79.out \
|
test79.out \
|
||||||
test80.out \
|
test80.out \
|
||||||
test84.out \
|
|
||||||
test88.out \
|
test88.out \
|
||||||
test91.out \
|
test91.out \
|
||||||
test94.out \
|
test94.out \
|
||||||
test95.out \
|
test95.out \
|
||||||
test98.out \
|
|
||||||
test99.out \
|
test99.out \
|
||||||
test103.out \
|
test103.out \
|
||||||
test104.out \
|
|
||||||
test107.out \
|
test107.out \
|
||||||
test108.out \
|
test108.out \
|
||||||
test_autoformat_join.out \
|
test_autoformat_join.out \
|
||||||
@@ -137,11 +131,13 @@ NEW_TESTS = test_arabic.res \
|
|||||||
test_command_count.res \
|
test_command_count.res \
|
||||||
test_crypt.res \
|
test_crypt.res \
|
||||||
test_cscope.res \
|
test_cscope.res \
|
||||||
|
test_curswant.res \
|
||||||
test_diffmode.res \
|
test_diffmode.res \
|
||||||
test_digraph.res \
|
test_digraph.res \
|
||||||
test_display.res \
|
test_display.res \
|
||||||
test_edit.res \
|
test_edit.res \
|
||||||
test_farsi.res \
|
test_farsi.res \
|
||||||
|
test_file_size.res \
|
||||||
test_fnameescape.res \
|
test_fnameescape.res \
|
||||||
test_fold.res \
|
test_fold.res \
|
||||||
test_gf.res \
|
test_gf.res \
|
||||||
@@ -158,6 +154,8 @@ NEW_TESTS = test_arabic.res \
|
|||||||
test_job_fails.res \
|
test_job_fails.res \
|
||||||
test_json.res \
|
test_json.res \
|
||||||
test_langmap.res \
|
test_langmap.res \
|
||||||
|
test_let.res \
|
||||||
|
test_lineending.res \
|
||||||
test_listlbr.res \
|
test_listlbr.res \
|
||||||
test_listlbr_utf8.res \
|
test_listlbr_utf8.res \
|
||||||
test_lua.res \
|
test_lua.res \
|
||||||
@@ -186,6 +184,7 @@ NEW_TESTS = test_arabic.res \
|
|||||||
test_retab.res \
|
test_retab.res \
|
||||||
test_registers.res \
|
test_registers.res \
|
||||||
test_ruby.res \
|
test_ruby.res \
|
||||||
|
test_scrollbind.res \
|
||||||
test_search.res \
|
test_search.res \
|
||||||
test_signs.res \
|
test_signs.res \
|
||||||
test_smartindent.res \
|
test_smartindent.res \
|
||||||
|
@@ -54,9 +54,6 @@
|
|||||||
# Comment out if you have GNU compatible diff on your system
|
# Comment out if you have GNU compatible diff on your system
|
||||||
# HAVE_GDIFF = YES
|
# HAVE_GDIFF = YES
|
||||||
|
|
||||||
# Comment out if you have GNU compatible cksum on your system
|
|
||||||
# HAVE_CKSUM = YES
|
|
||||||
|
|
||||||
# Comment out if you have ICONV support
|
# Comment out if you have ICONV support
|
||||||
# HAVE_ICONV = YES
|
# HAVE_ICONV = YES
|
||||||
|
|
||||||
@@ -77,9 +74,9 @@ VIMPROG = <->vim.exe
|
|||||||
.SUFFIXES : .out .in
|
.SUFFIXES : .out .in
|
||||||
|
|
||||||
SCRIPT = test1.out test3.out test4.out test5.out \
|
SCRIPT = test1.out test3.out test4.out test5.out \
|
||||||
test7.out test8.out test9.out \
|
test7.out test8.out \
|
||||||
test14.out test15.out \
|
test14.out test15.out \
|
||||||
test19.out test20.out test22.out \
|
test19.out test20.out \
|
||||||
test28.out test29.out test30.out test31.out test32.out \
|
test28.out test29.out test30.out test31.out test32.out \
|
||||||
test33.out test34.out test36.out test37.out \
|
test33.out test34.out test36.out test37.out \
|
||||||
test38.out test39.out test40.out test41.out test42.out \
|
test38.out test39.out test40.out test41.out test42.out \
|
||||||
@@ -90,10 +87,10 @@ SCRIPT = test1.out test3.out test4.out test5.out \
|
|||||||
test66.out test68.out test69.out \
|
test66.out test68.out test69.out \
|
||||||
test72.out \
|
test72.out \
|
||||||
test77a.out test78.out test79.out test80.out \
|
test77a.out test78.out test79.out test80.out \
|
||||||
test84.out test88.out \
|
test88.out \
|
||||||
test91.out test94.out \
|
test91.out test94.out \
|
||||||
test95.out test98.out test99.out \
|
test95.out test99.out \
|
||||||
test103.out test104.out \
|
test103.out \
|
||||||
test107.out test108.out\
|
test107.out test108.out\
|
||||||
test_autocmd_option.out \
|
test_autocmd_option.out \
|
||||||
test_autoformat_join.out \
|
test_autoformat_join.out \
|
||||||
@@ -164,10 +161,6 @@ SCRIPT_GZIP = test11.out
|
|||||||
SCRIPT_GDIFF = test47.out
|
SCRIPT_GDIFF = test47.out
|
||||||
.ENDIF
|
.ENDIF
|
||||||
|
|
||||||
.IFDEF HAVE_CKSUM
|
|
||||||
SCRIPT_CKSUM = test77.out
|
|
||||||
.ENDIF
|
|
||||||
|
|
||||||
.IFDEF HAVE_ICONV
|
.IFDEF HAVE_ICONV
|
||||||
SCRIPT_ICONV = test83.out
|
SCRIPT_ICONV = test83.out
|
||||||
.ENDIF
|
.ENDIF
|
||||||
@@ -201,7 +194,7 @@ SCRIPT_PYTHON = test86.out test87.out
|
|||||||
-@ if "''F$SEARCH("Xtest.*")'" .NES. "" then delete/noconfirm/nolog Xtest.*.*
|
-@ if "''F$SEARCH("Xtest.*")'" .NES. "" then delete/noconfirm/nolog Xtest.*.*
|
||||||
|
|
||||||
all : clean nolog $(START_WITH) $(SCRIPT) $(SCRIPT_GUI) $(SCRIPT_UNIX) $(SCRIPT_WIN) $(SCRIPT_SPELL) $(SCRIPT_ODS5) $(SCRIPT_GZIP) \
|
all : clean nolog $(START_WITH) $(SCRIPT) $(SCRIPT_GUI) $(SCRIPT_UNIX) $(SCRIPT_WIN) $(SCRIPT_SPELL) $(SCRIPT_ODS5) $(SCRIPT_GZIP) \
|
||||||
$(SCRIPT_GDIFF) $(SCRIPT_MZSCH) $(SCRIPT_CKSUM) $(SCRIPT_ICONV) $(SCRIPT_LUA) $(SCRIPT_PYTHON) nolog
|
$(SCRIPT_GDIFF) $(SCRIPT_MZSCH) $(SCRIPT_ICONV) $(SCRIPT_LUA) $(SCRIPT_PYTHON) nolog
|
||||||
-@ write sys$output " "
|
-@ write sys$output " "
|
||||||
-@ write sys$output "-----------------------------------------------"
|
-@ write sys$output "-----------------------------------------------"
|
||||||
-@ write sys$output " All done"
|
-@ write sys$output " All done"
|
||||||
@@ -232,7 +225,6 @@ nolog :
|
|||||||
-@ write sys$output " HAVE_ODS5 = ""$(HAVE_ODS5)"" "
|
-@ write sys$output " HAVE_ODS5 = ""$(HAVE_ODS5)"" "
|
||||||
-@ write sys$output " HAVE_GZIP = ""$(HAVE_GZIP)"" "
|
-@ write sys$output " HAVE_GZIP = ""$(HAVE_GZIP)"" "
|
||||||
-@ write sys$output " HAVE_GDIFF = ""$(HAVE_GDIFF)"" "
|
-@ write sys$output " HAVE_GDIFF = ""$(HAVE_GDIFF)"" "
|
||||||
-@ write sys$output " HAVE_CKSUM = ""$(HAVE_CKSUM)"" "
|
|
||||||
-@ write sys$output " HAVE_ICONV = ""$(HAVE_ICONV)"" "
|
-@ write sys$output " HAVE_ICONV = ""$(HAVE_ICONV)"" "
|
||||||
-@ write sys$output " HAVE_LUA = ""$(HAVE_LUA)"" "
|
-@ write sys$output " HAVE_LUA = ""$(HAVE_LUA)"" "
|
||||||
-@ write sys$output " HAVE_PYTHON= ""$(HAVE_PYTHON)"" "
|
-@ write sys$output " HAVE_PYTHON= ""$(HAVE_PYTHON)"" "
|
||||||
|
@@ -5,9 +5,9 @@
|
|||||||
VimProg ?= ../vim
|
VimProg ?= ../vim
|
||||||
|
|
||||||
Scripts = test1.out test2.out test3.out test4.out test5.out test6.out
|
Scripts = test1.out test2.out test3.out test4.out test5.out test6.out
|
||||||
test7.out test8.out test9.out test11.out
|
test7.out test8.out test11.out
|
||||||
test12.out test13.out test14.out test15.out test17.out
|
test12.out test13.out test14.out test15.out test17.out
|
||||||
test18.out test19.out test20.out test21.out test22.out
|
test18.out test19.out test20.out test21.out
|
||||||
test25.out test27.out
|
test25.out test27.out
|
||||||
test28.out test29.out test30.out test31.out test32.out
|
test28.out test29.out test30.out test31.out test32.out
|
||||||
test33.out test34.out test36.out test37.out
|
test33.out test34.out test36.out test37.out
|
||||||
|
@@ -1,30 +0,0 @@
|
|||||||
Tests for :let. vim: set ft=vim ts=8 :
|
|
||||||
|
|
||||||
STARTTEST
|
|
||||||
:so small.vim
|
|
||||||
:set runtimepath+=./sautest
|
|
||||||
:" Test to not autoload when assigning. It causes internal error.
|
|
||||||
:try
|
|
||||||
: let Test104#numvar = function('tr')
|
|
||||||
: $put ='OK: ' . string(Test104#numvar)
|
|
||||||
:catch
|
|
||||||
: $put ='FAIL: ' . v:exception
|
|
||||||
:endtry
|
|
||||||
:let a = 1
|
|
||||||
:let b = 2
|
|
||||||
:for letargs in ['a b', '{0 == 1 ? "a" : "b"}', '{0 == 1 ? "a" : "b"} a', 'a {0 == 1 ? "a" : "b"}']
|
|
||||||
: try
|
|
||||||
: redir => messages
|
|
||||||
: execute 'let' letargs
|
|
||||||
: redir END
|
|
||||||
: $put ='OK:'
|
|
||||||
: $put =split(substitute(messages, '\n', '\0 ', 'g'), '\n')
|
|
||||||
: catch
|
|
||||||
: $put ='FAIL: ' . v:exception
|
|
||||||
: redir END
|
|
||||||
: endtry
|
|
||||||
:endfor
|
|
||||||
:/^Results/,$wq! test.out
|
|
||||||
ENDTEST
|
|
||||||
|
|
||||||
Results of test104:
|
|
@@ -1,13 +0,0 @@
|
|||||||
Results of test104:
|
|
||||||
OK: function('tr')
|
|
||||||
OK:
|
|
||||||
a #1
|
|
||||||
b #2
|
|
||||||
OK:
|
|
||||||
b #2
|
|
||||||
OK:
|
|
||||||
b #2
|
|
||||||
a #1
|
|
||||||
OK:
|
|
||||||
a #1
|
|
||||||
b #2
|
|
@@ -1,13 +0,0 @@
|
|||||||
Tests for file with some lines ending in CTRL-M, some not
|
|
||||||
|
|
||||||
STARTTEST
|
|
||||||
:set ta tx
|
|
||||||
:e!
|
|
||||||
:$-3,$w! test.out
|
|
||||||
:qa!
|
|
||||||
ENDTEST
|
|
||||||
|
|
||||||
this lines ends in a
|
|
||||||
this one doesn't
|
|
||||||
this one does
|
|
||||||
and the last one doesn't
|
|
@@ -1,4 +0,0 @@
|
|||||||
this lines ends in a
|
|
||||||
this one doesn't
|
|
||||||
this one does
|
|
||||||
and the last one doesn't
|
|
@@ -1,31 +0,0 @@
|
|||||||
Inserts 2 million lines with consecutive integers starting from 1
|
|
||||||
(essentially, the output of GNU's seq 1 2000000), writes them to Xtest
|
|
||||||
and writes its cksum to test.out.
|
|
||||||
|
|
||||||
We need 2 million lines to trigger a call to mf_hash_grow(). If it would mess
|
|
||||||
up the lines the checksum would differ.
|
|
||||||
|
|
||||||
cksum is part of POSIX and so should be available on most Unixes.
|
|
||||||
If it isn't available then the test will be skipped.
|
|
||||||
|
|
||||||
STARTTEST
|
|
||||||
:so small.vim
|
|
||||||
:set belloff=all
|
|
||||||
:if !executable("cksum")
|
|
||||||
: e! test.ok
|
|
||||||
: w! test.out
|
|
||||||
: qa!
|
|
||||||
:endif
|
|
||||||
:set fileformat=unix undolevels=-1
|
|
||||||
ggdG
|
|
||||||
:let i = 1
|
|
||||||
:while i <= 2000000 | call append(i, range(i, i + 99)) | let i += 100 | endwhile
|
|
||||||
ggdd
|
|
||||||
:w! Xtest
|
|
||||||
:r !cksum Xtest
|
|
||||||
:s/\s/ /g
|
|
||||||
:set fileformat&
|
|
||||||
:.w! test.out
|
|
||||||
:qa!
|
|
||||||
ENDTEST
|
|
||||||
|
|
@@ -1 +0,0 @@
|
|||||||
3678979763 14888896 Xtest
|
|
@@ -1,35 +0,0 @@
|
|||||||
Tests for curswant not changing when setting an option
|
|
||||||
|
|
||||||
STARTTEST
|
|
||||||
:so small.vim
|
|
||||||
:/^start target options$/+1,/^end target options$/-1 yank
|
|
||||||
:let target_option_names = split(@0)
|
|
||||||
:function TestCurswant(option_name)
|
|
||||||
: normal! ggf8j
|
|
||||||
: let curswant_before = winsaveview().curswant
|
|
||||||
: execute 'let' '&'.a:option_name '=' '&'.a:option_name
|
|
||||||
: let curswant_after = winsaveview().curswant
|
|
||||||
: return [a:option_name, curswant_before, curswant_after]
|
|
||||||
:endfunction
|
|
||||||
:
|
|
||||||
:new
|
|
||||||
:put =['1234567890', '12345']
|
|
||||||
:1 delete _
|
|
||||||
:let result = []
|
|
||||||
:for option_name in target_option_names
|
|
||||||
: call add(result, TestCurswant(option_name))
|
|
||||||
:endfor
|
|
||||||
:
|
|
||||||
:new
|
|
||||||
:put =map(copy(result), 'join(v:val, '' '')')
|
|
||||||
:1 delete _
|
|
||||||
:write test.out
|
|
||||||
:
|
|
||||||
:qall!
|
|
||||||
ENDTEST
|
|
||||||
|
|
||||||
start target options
|
|
||||||
tabstop
|
|
||||||
timeoutlen
|
|
||||||
ttimeoutlen
|
|
||||||
end target options
|
|
@@ -1,3 +0,0 @@
|
|||||||
tabstop 7 4
|
|
||||||
timeoutlen 7 7
|
|
||||||
ttimeoutlen 7 7
|
|
@@ -1,12 +0,0 @@
|
|||||||
Test for Bufleave autocommand that deletes the buffer we are about to edit.
|
|
||||||
|
|
||||||
STARTTEST
|
|
||||||
:so small.vim
|
|
||||||
:au BufLeave test9.in bwipe yy
|
|
||||||
:e yy
|
|
||||||
:/^start of/,$w! test.out " Write contents of this file
|
|
||||||
:qa!
|
|
||||||
ENDTEST
|
|
||||||
|
|
||||||
start of test file xx
|
|
||||||
end of test file xx
|
|
@@ -1,2 +0,0 @@
|
|||||||
start of test file xx
|
|
||||||
end of test file xx
|
|
@@ -1,43 +0,0 @@
|
|||||||
Test for 'scrollbind' causing an unexpected scroll of one of the windows.
|
|
||||||
STARTTEST
|
|
||||||
:so small.vim
|
|
||||||
:" We don't want the status line to cause problems:
|
|
||||||
:set laststatus=0
|
|
||||||
:let g:totalLines = &lines * 20
|
|
||||||
:let middle = g:totalLines / 2
|
|
||||||
:wincmd n
|
|
||||||
:wincmd o
|
|
||||||
:for i in range(1, g:totalLines)
|
|
||||||
: call setline(i, 'LINE ' . i)
|
|
||||||
:endfor
|
|
||||||
:exe string(middle)
|
|
||||||
:normal zt
|
|
||||||
:normal M
|
|
||||||
:aboveleft vert new
|
|
||||||
:for i in range(1, g:totalLines)
|
|
||||||
: call setline(i, 'line ' . i)
|
|
||||||
:endfor
|
|
||||||
:exe string(middle)
|
|
||||||
:normal zt
|
|
||||||
:normal M
|
|
||||||
:" Execute the following two command at once to reproduce the problem.
|
|
||||||
:setl scb | wincmd p
|
|
||||||
:setl scb
|
|
||||||
:wincmd w
|
|
||||||
:let topLineLeft = line('w0')
|
|
||||||
:wincmd p
|
|
||||||
:let topLineRight = line('w0')
|
|
||||||
:setl noscrollbind
|
|
||||||
:wincmd p
|
|
||||||
:setl noscrollbind
|
|
||||||
:q!
|
|
||||||
:%del _
|
|
||||||
:call setline(1, 'Difference between the top lines (left - right): ' . string(topLineLeft - topLineRight))
|
|
||||||
:w! test.out
|
|
||||||
:brewind
|
|
||||||
ENDTEST
|
|
||||||
|
|
||||||
STARTTEST
|
|
||||||
:qa!
|
|
||||||
ENDTEST
|
|
||||||
|
|
@@ -1 +0,0 @@
|
|||||||
Difference between the top lines (left - right): 0
|
|
@@ -613,3 +613,22 @@ func Test_OptionSet_diffmode_close()
|
|||||||
call test_override('starting', 0)
|
call test_override('starting', 0)
|
||||||
"delfunc! AutoCommandOptionSet
|
"delfunc! AutoCommandOptionSet
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Test for Bufleave autocommand that deletes the buffer we are about to edit.
|
||||||
|
func Test_BufleaveWithDelete()
|
||||||
|
new | edit Xfile1
|
||||||
|
|
||||||
|
augroup test_bufleavewithdelete
|
||||||
|
autocmd!
|
||||||
|
autocmd BufLeave Xfile1 bwipe Xfile2
|
||||||
|
augroup END
|
||||||
|
|
||||||
|
call assert_fails('edit Xfile2', 'E143:')
|
||||||
|
call assert_equal('Xfile1', bufname('%'))
|
||||||
|
|
||||||
|
autocmd! test_bufleavewithdelete BufLeave Xfile1
|
||||||
|
augroup! test_bufleavewithdelete
|
||||||
|
|
||||||
|
new
|
||||||
|
bwipe! Xfile1
|
||||||
|
endfunc
|
||||||
|
23
src/testdir/test_curswant.vim
Normal file
23
src/testdir/test_curswant.vim
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
" Tests for curswant not changing when setting an option
|
||||||
|
|
||||||
|
func Test_curswant()
|
||||||
|
new
|
||||||
|
call append(0, ['1234567890', '12345'])
|
||||||
|
|
||||||
|
normal! ggf8j
|
||||||
|
call assert_equal(7, winsaveview().curswant)
|
||||||
|
let &tabstop=&tabstop
|
||||||
|
call assert_equal(4, winsaveview().curswant)
|
||||||
|
|
||||||
|
normal! ggf8j
|
||||||
|
call assert_equal(7, winsaveview().curswant)
|
||||||
|
let &timeoutlen=&timeoutlen
|
||||||
|
call assert_equal(7, winsaveview().curswant)
|
||||||
|
|
||||||
|
normal! ggf8j
|
||||||
|
call assert_equal(7, winsaveview().curswant)
|
||||||
|
let &ttimeoutlen=&ttimeoutlen
|
||||||
|
call assert_equal(7, winsaveview().curswant)
|
||||||
|
|
||||||
|
enew!
|
||||||
|
endfunc
|
29
src/testdir/test_file_size.vim
Normal file
29
src/testdir/test_file_size.vim
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
" Inserts 2 million lines with consecutive integers starting from 1
|
||||||
|
" (essentially, the output of GNU's seq 1 2000000), writes them to Xtest
|
||||||
|
" and writes its cksum to test.out.
|
||||||
|
"
|
||||||
|
" We need 2 million lines to trigger a call to mf_hash_grow(). If it would mess
|
||||||
|
" up the lines the checksum would differ.
|
||||||
|
"
|
||||||
|
" cksum is part of POSIX and so should be available on most Unixes.
|
||||||
|
" If it isn't available then the test will be skipped.
|
||||||
|
func Test_File_Size()
|
||||||
|
if !executable('cksum')
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
set belloff=all fileformat=unix undolevels=-1
|
||||||
|
|
||||||
|
new
|
||||||
|
for i in range(1, 2000000, 100)
|
||||||
|
call append(i, range(i, i + 99))
|
||||||
|
endfor
|
||||||
|
|
||||||
|
1delete
|
||||||
|
w! Xtest
|
||||||
|
let l = systemlist('cksum Xtest')
|
||||||
|
call assert_equal('3678979763 14888896 Xtest', l[0])
|
||||||
|
|
||||||
|
enew!
|
||||||
|
call delete('Xtest')
|
||||||
|
set belloff& fileformat& undolevels&
|
||||||
|
endfunc
|
27
src/testdir/test_let.vim
Normal file
27
src/testdir/test_let.vim
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
" Tests for the :let command.
|
||||||
|
|
||||||
|
func Test_let()
|
||||||
|
" Test to not autoload when assigning. It causes internal error.
|
||||||
|
set runtimepath+=./sautest
|
||||||
|
let Test104#numvar = function('tr')
|
||||||
|
call assert_equal("function('tr')", string(Test104#numvar))
|
||||||
|
|
||||||
|
let a = 1
|
||||||
|
let b = 2
|
||||||
|
|
||||||
|
let out = execute('let a b')
|
||||||
|
let s = "\na #1\nb #2"
|
||||||
|
call assert_equal(s, out)
|
||||||
|
|
||||||
|
let out = execute('let {0 == 1 ? "a" : "b"}')
|
||||||
|
let s = "\nb #2"
|
||||||
|
call assert_equal(s, out)
|
||||||
|
|
||||||
|
let out = execute('let {0 == 1 ? "a" : "b"} a')
|
||||||
|
let s = "\nb #2\na #1"
|
||||||
|
call assert_equal(s, out)
|
||||||
|
|
||||||
|
let out = execute('let a {0 == 1 ? "a" : "b"}')
|
||||||
|
let s = "\na #1\nb #2"
|
||||||
|
call assert_equal(s, out)
|
||||||
|
endfunc
|
19
src/testdir/test_lineending.vim
Normal file
19
src/testdir/test_lineending.vim
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
" Tests for saving/loading a file with some lines ending in
|
||||||
|
" CTRL-M, some not
|
||||||
|
func Test_lineending()
|
||||||
|
let l = ["this line ends in a\<CR>",
|
||||||
|
\ "this one doesn't",
|
||||||
|
\ "this one does\<CR>",
|
||||||
|
\ "and the last one doesn't"]
|
||||||
|
set ta tx
|
||||||
|
enew!
|
||||||
|
call append(0, l)
|
||||||
|
$delete
|
||||||
|
write Xfile1
|
||||||
|
bwipe Xfile1
|
||||||
|
edit Xfile1
|
||||||
|
let t = getline(1, '$')
|
||||||
|
call assert_equal(l, t)
|
||||||
|
new | only
|
||||||
|
call delete('Xfile1')
|
||||||
|
endfunc
|
32
src/testdir/test_scrollbind.vim
Normal file
32
src/testdir/test_scrollbind.vim
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
" Test for 'scrollbind' causing an unexpected scroll of one of the windows.
|
||||||
|
func Test_scrollbind()
|
||||||
|
" We don't want the status line to cause problems:
|
||||||
|
set laststatus=0
|
||||||
|
let totalLines = &lines * 20
|
||||||
|
let middle = totalLines / 2
|
||||||
|
new | only
|
||||||
|
for i in range(1, totalLines)
|
||||||
|
call setline(i, 'LINE ' . i)
|
||||||
|
endfor
|
||||||
|
exe string(middle)
|
||||||
|
normal zt
|
||||||
|
normal M
|
||||||
|
aboveleft vert new
|
||||||
|
for i in range(1, totalLines)
|
||||||
|
call setline(i, 'line ' . i)
|
||||||
|
endfor
|
||||||
|
exe string(middle)
|
||||||
|
normal zt
|
||||||
|
normal M
|
||||||
|
" Execute the following two commands at once to reproduce the problem.
|
||||||
|
setl scb | wincmd p
|
||||||
|
setl scb
|
||||||
|
wincmd w
|
||||||
|
let topLineLeft = line('w0')
|
||||||
|
wincmd p
|
||||||
|
let topLineRight = line('w0')
|
||||||
|
setl noscrollbind
|
||||||
|
wincmd p
|
||||||
|
setl noscrollbind
|
||||||
|
call assert_equal(0, topLineLeft - topLineRight)
|
||||||
|
endfunc
|
@@ -769,6 +769,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
861,
|
||||||
/**/
|
/**/
|
||||||
860,
|
860,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user