diff options
author | Yegappan Lakshmanan <yegappan@yahoo.com> | 2021-05-19 17:15:04 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2021-05-19 17:15:04 +0200 |
commit | 46aa6f93acb5d932d2893606d980a6b4b8a9594c (patch) | |
tree | 8db600bf818c86a923bbf7375c0858f2c6967978 | |
parent | 56c9fd01076bc62b55c8cb89d8a66f6136e52f3a (diff) | |
download | vim-git-46aa6f93acb5d932d2893606d980a6b4b8a9594c.tar.gz |
patch 8.2.2873: not enough tests for writing buffersv8.2.2873
Problem: Not enough tests for writing buffers.
Solution: Add a few more tests. (Yegappan Lakshmanan, closes #8229)
-rw-r--r-- | src/testdir/test_buffer.vim | 20 | ||||
-rw-r--r-- | src/testdir/test_cmdline.vim | 30 | ||||
-rw-r--r-- | src/testdir/test_functions.vim | 1 | ||||
-rw-r--r-- | src/testdir/test_writefile.vim | 22 | ||||
-rw-r--r-- | src/version.c | 2 |
5 files changed, 72 insertions, 3 deletions
diff --git a/src/testdir/test_buffer.vim b/src/testdir/test_buffer.vim index 4e8a79f0c..960a760eb 100644 --- a/src/testdir/test_buffer.vim +++ b/src/testdir/test_buffer.vim @@ -381,4 +381,24 @@ func Test_balt() call assert_equal('OtherBuffer', bufname()) 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 diff --git a/src/testdir/test_cmdline.vim b/src/testdir/test_cmdline.vim index bba7e725e..d167d4c7c 100644 --- a/src/testdir/test_cmdline.vim +++ b/src/testdir/test_cmdline.vim @@ -1309,13 +1309,22 @@ func Test_cmdlineclear_tabenter() call delete('XtestCmdlineClearTabenter') endfunc -" Test for failure in expanding special keywords in cmdline +" Test for expanding special keywords in cmdline func Test_cmdline_expand_special() %bwipe! call assert_fails('e #', 'E499:') call assert_fails('e <afile>', 'E495:') call assert_fails('e <abuf>', 'E496:') 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 func Test_cmdwin_jump_to_win() @@ -1823,5 +1832,24 @@ func Test_cmd_map_cmdlineChanged() augroup END 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 diff --git a/src/testdir/test_functions.vim b/src/testdir/test_functions.vim index f67569777..96cf16ce4 100644 --- a/src/testdir/test_functions.vim +++ b/src/testdir/test_functions.vim @@ -2630,6 +2630,7 @@ endfunc func Test_glob() call assert_equal('', glob(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([], 'XGLOB2') diff --git a/src/testdir/test_writefile.vim b/src/testdir/test_writefile.vim index 75dda81d6..e4293e3f1 100644 --- a/src/testdir/test_writefile.vim +++ b/src/testdir/test_writefile.vim @@ -471,7 +471,7 @@ func Test_write_readonly_dir() " Root can do it too. CheckNotRoot - call mkdir('Xdir') + call mkdir('Xdir/') call writefile(['one'], 'Xdir/Xfile1') call setfperm('Xdir', 'r-xr--r--') " 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 delete('XNoEolSetEol') - set ff& + set ff& fixeol& bwipe! XNoEolSetEol endfunc @@ -897,4 +897,22 @@ func Test_write_backup_symlink() call delete('Xfile.bak') 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 diff --git a/src/version.c b/src/version.c index af4046250..7fd433822 100644 --- a/src/version.c +++ b/src/version.c @@ -751,6 +751,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 2873, +/**/ 2872, /**/ 2871, |