Mercurial > vim
view src/testdir/test_delete.vim @ 32732:257ab4ee8e4a v9.0.1686
patch 9.0.1686: undotree() only works for the current buffer
Commit: https://github.com/vim/vim/commit/5fee11114975b7405b7ccd3ee8758e54bf559760
Author: Devin J. Pohly <djpohly@gmail.com>
Date: Sun Apr 23 20:26:59 2023 -0500
patch 9.0.1686: undotree() only works for the current buffer
Problem: undotree() only works for the current buffer
Solution: Add an optional "buffer number" parameter to undotree(). If
omitted, use the current buffer for backwards compatibility.
closes: #4001
closes: #12292
Signed-off-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
Co-authored-by: Devin J. Pohly <djpohly@gmail.com>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Fri, 11 Aug 2023 23:00:05 +0200 |
parents | 98f5a0618a77 |
children | 58c9f11eae5b |
line wrap: on
line source
" Test for delete(). source check.vim func Test_file_delete() split Xfdelfile call setline(1, ['a', 'b']) wq call assert_equal(['a', 'b'], readfile('Xfdelfile')) call assert_equal(0, delete('Xfdelfile')) call assert_fails('call readfile("Xfdelfile")', 'E484:') call assert_equal(-1, delete('Xfdelfile')) bwipe Xfdelfile endfunc func Test_dir_delete() call mkdir('Xdirdel') call assert_true(isdirectory('Xdirdel')) call assert_equal(0, delete('Xdirdel', 'd')) call assert_false(isdirectory('Xdirdel')) call assert_equal(-1, delete('Xdirdel', 'd')) endfunc func Test_recursive_delete() call mkdir('Xrecdel') call mkdir('Xrecdel/subdir') call mkdir('Xrecdel/empty') split Xrecdel/Xfile call setline(1, ['a', 'b']) w w Xrecdel/subdir/Xfile close call assert_true(isdirectory('Xrecdel')) call assert_equal(['a', 'b'], readfile('Xrecdel/Xfile')) call assert_true(isdirectory('Xrecdel/subdir')) call assert_equal(['a', 'b'], readfile('Xrecdel/subdir/Xfile')) call assert_true('Xrecdel/empty'->isdirectory()) call assert_equal(0, delete('Xrecdel', 'rf')) call assert_false(isdirectory('Xrecdel')) call assert_equal(-1, delete('Xrecdel', 'd')) bwipe Xrecdel/Xfile bwipe Xrecdel/subdir/Xfile endfunc func Test_symlink_delete() CheckUnix split Xslfile call setline(1, ['a', 'b']) wq silent !ln -s Xslfile Xdellink " Delete the link, not the file call assert_equal(0, delete('Xdellink')) call assert_equal(-1, delete('Xdellink')) call assert_equal(0, delete('Xslfile')) bwipe Xslfile endfunc func Test_symlink_dir_delete() CheckUnix call mkdir('Xsymdir') silent !ln -s Xsymdir Xdirlink call assert_true(isdirectory('Xsymdir')) call assert_true(isdirectory('Xdirlink')) " Delete the link, not the directory call assert_equal(0, delete('Xdirlink')) call assert_equal(-1, delete('Xdirlink')) call assert_equal(0, delete('Xsymdir', 'd')) endfunc func Test_symlink_recursive_delete() CheckUnix call mkdir('Xrecdir3') call mkdir('Xrecdir3/subdir') call mkdir('Xrecdir4') split Xrecdir3/Xfile call setline(1, ['a', 'b']) w w Xrecdir3/subdir/Xfile w Xrecdir4/Xfile close silent !ln -s ../Xrecdir4 Xrecdir3/Xreclink call assert_true(isdirectory('Xrecdir3')) call assert_equal(['a', 'b'], readfile('Xrecdir3/Xfile')) call assert_true(isdirectory('Xrecdir3/subdir')) call assert_equal(['a', 'b'], readfile('Xrecdir3/subdir/Xfile')) call assert_true(isdirectory('Xrecdir4')) call assert_true(isdirectory('Xrecdir3/Xreclink')) call assert_equal(['a', 'b'], readfile('Xrecdir4/Xfile')) call assert_equal(0, delete('Xrecdir3', 'rf')) call assert_false(isdirectory('Xrecdir3')) call assert_equal(-1, delete('Xrecdir3', 'd')) " symlink is deleted, not the directory it points to call assert_true(isdirectory('Xrecdir4')) call assert_equal(['a', 'b'], readfile('Xrecdir4/Xfile')) call assert_equal(0, delete('Xrecdir4/Xfile')) call assert_equal(0, delete('Xrecdir4', 'd')) bwipe Xrecdir3/Xfile bwipe Xrecdir3/subdir/Xfile bwipe Xrecdir4/Xfile endfunc func Test_delete_errors() call assert_fails('call delete('''')', 'E474:') call assert_fails('call delete(''foo'', 0)', 'E15:') endfunc " vim: shiftwidth=2 sts=2 expandtab