forked from aniani/vim
patch 8.2.2873: not enough tests for writing buffers
Problem: Not enough tests for writing buffers. Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8229)
This commit is contained in:
committed by
Bram Moolenaar
parent
56c9fd0107
commit
46aa6f93ac
@@ -381,4 +381,24 @@ func Test_balt()
|
|||||||
call assert_equal('OtherBuffer', bufname())
|
call assert_equal('OtherBuffer', bufname())
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Test for the 'maxmem' and 'maxmemtot' options
|
||||||
|
func Test_buffer_maxmem()
|
||||||
|
" use 1KB per buffer and 2KB for all the buffers
|
||||||
|
set maxmem=1 maxmemtot=2
|
||||||
|
new
|
||||||
|
let v:errmsg = ''
|
||||||
|
" try opening some files
|
||||||
|
edit test_arglist.vim
|
||||||
|
call assert_equal('test_arglist.vim', bufname())
|
||||||
|
edit test_eval_stuff.vim
|
||||||
|
call assert_equal('test_eval_stuff.vim', bufname())
|
||||||
|
b test_arglist.vim
|
||||||
|
call assert_equal('test_arglist.vim', bufname())
|
||||||
|
b test_eval_stuff.vim
|
||||||
|
call assert_equal('test_eval_stuff.vim', bufname())
|
||||||
|
close
|
||||||
|
call assert_equal('', v:errmsg)
|
||||||
|
set maxmem& maxmemtot&
|
||||||
|
endfunc
|
||||||
|
|
||||||
" vim: shiftwidth=2 sts=2 expandtab
|
" vim: shiftwidth=2 sts=2 expandtab
|
||||||
|
@@ -1309,13 +1309,22 @@ func Test_cmdlineclear_tabenter()
|
|||||||
call delete('XtestCmdlineClearTabenter')
|
call delete('XtestCmdlineClearTabenter')
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
" Test for failure in expanding special keywords in cmdline
|
" Test for expanding special keywords in cmdline
|
||||||
func Test_cmdline_expand_special()
|
func Test_cmdline_expand_special()
|
||||||
%bwipe!
|
%bwipe!
|
||||||
call assert_fails('e #', 'E499:')
|
call assert_fails('e #', 'E499:')
|
||||||
call assert_fails('e <afile>', 'E495:')
|
call assert_fails('e <afile>', 'E495:')
|
||||||
call assert_fails('e <abuf>', 'E496:')
|
call assert_fails('e <abuf>', 'E496:')
|
||||||
call assert_fails('e <amatch>', 'E497:')
|
call assert_fails('e <amatch>', 'E497:')
|
||||||
|
|
||||||
|
call writefile([], 'Xfile.cpp')
|
||||||
|
call writefile([], 'Xfile.java')
|
||||||
|
new Xfile.cpp
|
||||||
|
call feedkeys(":e %:r\<C-A>\<C-B>\"\<CR>", 'xt')
|
||||||
|
call assert_equal('"e Xfile.cpp Xfile.java', @:)
|
||||||
|
close
|
||||||
|
call delete('Xfile.cpp')
|
||||||
|
call delete('Xfile.java')
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
func Test_cmdwin_jump_to_win()
|
func Test_cmdwin_jump_to_win()
|
||||||
@@ -1823,5 +1832,24 @@ func Test_cmd_map_cmdlineChanged()
|
|||||||
augroup END
|
augroup END
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Test for the 'suffixes' option
|
||||||
|
func Test_suffixes_opt()
|
||||||
|
call writefile([], 'Xfile')
|
||||||
|
call writefile([], 'Xfile.c')
|
||||||
|
call writefile([], 'Xfile.o')
|
||||||
|
set suffixes=
|
||||||
|
call feedkeys(":e Xfi*\<C-A>\<C-B>\"\<CR>", 'xt')
|
||||||
|
call assert_equal('"e Xfile Xfile.c Xfile.o', @:)
|
||||||
|
set suffixes=.c
|
||||||
|
call feedkeys(":e Xfi*\<C-A>\<C-B>\"\<CR>", 'xt')
|
||||||
|
call assert_equal('"e Xfile Xfile.o Xfile.c', @:)
|
||||||
|
set suffixes=,,
|
||||||
|
call feedkeys(":e Xfi*\<C-A>\<C-B>\"\<CR>", 'xt')
|
||||||
|
call assert_equal('"e Xfile.c Xfile.o Xfile', @:)
|
||||||
|
set suffixes&
|
||||||
|
call delete('Xfile')
|
||||||
|
call delete('Xfile.c')
|
||||||
|
call delete('Xfile.o')
|
||||||
|
endfunc
|
||||||
|
|
||||||
" vim: shiftwidth=2 sts=2 expandtab
|
" vim: shiftwidth=2 sts=2 expandtab
|
||||||
|
@@ -2630,6 +2630,7 @@ endfunc
|
|||||||
func Test_glob()
|
func Test_glob()
|
||||||
call assert_equal('', glob(test_null_string()))
|
call assert_equal('', glob(test_null_string()))
|
||||||
call assert_equal('', globpath(test_null_string(), test_null_string()))
|
call assert_equal('', globpath(test_null_string(), test_null_string()))
|
||||||
|
call assert_fails("let x = globpath(&rtp, 'syntax/c.vim', [])", 'E745:')
|
||||||
|
|
||||||
call writefile([], 'Xglob1')
|
call writefile([], 'Xglob1')
|
||||||
call writefile([], 'XGLOB2')
|
call writefile([], 'XGLOB2')
|
||||||
|
@@ -471,7 +471,7 @@ func Test_write_readonly_dir()
|
|||||||
" Root can do it too.
|
" Root can do it too.
|
||||||
CheckNotRoot
|
CheckNotRoot
|
||||||
|
|
||||||
call mkdir('Xdir')
|
call mkdir('Xdir/')
|
||||||
call writefile(['one'], 'Xdir/Xfile1')
|
call writefile(['one'], 'Xdir/Xfile1')
|
||||||
call setfperm('Xdir', 'r-xr--r--')
|
call setfperm('Xdir', 'r-xr--r--')
|
||||||
" try to create a new file in the directory
|
" try to create a new file in the directory
|
||||||
@@ -754,7 +754,7 @@ func Test_read_write_bin()
|
|||||||
call assert_equal(0z6E6F656F6C0A, readfile('XNoEolSetEol', 'B'))
|
call assert_equal(0z6E6F656F6C0A, readfile('XNoEolSetEol', 'B'))
|
||||||
|
|
||||||
call delete('XNoEolSetEol')
|
call delete('XNoEolSetEol')
|
||||||
set ff&
|
set ff& fixeol&
|
||||||
bwipe! XNoEolSetEol
|
bwipe! XNoEolSetEol
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
@@ -897,4 +897,22 @@ func Test_write_backup_symlink()
|
|||||||
call delete('Xfile.bak')
|
call delete('Xfile.bak')
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
" Test for ':write ++bin' and ':write ++nobin'
|
||||||
|
func Test_write_binary_file()
|
||||||
|
" create a file without an eol/eof character
|
||||||
|
call writefile(0z616161, 'Xfile1', 'b')
|
||||||
|
new Xfile1
|
||||||
|
write ++bin Xfile2
|
||||||
|
write ++nobin Xfile3
|
||||||
|
call assert_equal(0z616161, readblob('Xfile2'))
|
||||||
|
if has('win32')
|
||||||
|
call assert_equal(0z6161610D.0A, readblob('Xfile3'))
|
||||||
|
else
|
||||||
|
call assert_equal(0z6161610A, readblob('Xfile3'))
|
||||||
|
endif
|
||||||
|
call delete('Xfile1')
|
||||||
|
call delete('Xfile2')
|
||||||
|
call delete('Xfile3')
|
||||||
|
endfunc
|
||||||
|
|
||||||
" vim: shiftwidth=2 sts=2 expandtab
|
" vim: shiftwidth=2 sts=2 expandtab
|
||||||
|
@@ -750,6 +750,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 */
|
||||||
|
/**/
|
||||||
|
2873,
|
||||||
/**/
|
/**/
|
||||||
2872,
|
2872,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user