mirror of
https://github.com/neovim/neovim.git
synced 2026-07-19 15:41:32 +00:00
Revert "vim-patch:8.1.1378: delete() can not handle a file name that looks like a pattern (#12784)"
This reverts commit 4be0e92db0.
Unfortunately, that commit stalled the Windows builds on GHA and likely requires
other patches to work properly.
This commit is contained in:
@@ -70,7 +70,7 @@ describe('file reading, writing and bufnew and filter autocommands', function()
|
||||
feed_command('let $GZIP = ""')
|
||||
--execute('au FileChangedShell * echo "caught FileChangedShell"')
|
||||
feed_command('set bin')
|
||||
feed_command("au FileReadPost *.gz '[,']!GZIP= gzip -d")
|
||||
feed_command("au FileReadPost *.gz '[,']!gzip -d")
|
||||
-- Read and decompress the testfile.
|
||||
feed_command('$r Xtestfile.gz')
|
||||
expect('\n'..text1)
|
||||
|
||||
@@ -17,6 +17,33 @@ describe('Test for delete()', function()
|
||||
eq(-1, eval("delete('Xfile')"))
|
||||
end)
|
||||
|
||||
it('directory delete', function()
|
||||
command("call mkdir('Xdir1')")
|
||||
eq(1, eval("isdirectory('Xdir1')"))
|
||||
eq(0, eval("delete('Xdir1', 'd')"))
|
||||
eq(0, eval("isdirectory('Xdir1')"))
|
||||
eq(-1, eval("delete('Xdir1', 'd')"))
|
||||
end)
|
||||
it('recursive delete', function()
|
||||
command("call mkdir('Xdir1')")
|
||||
command("call mkdir('Xdir1/subdir')")
|
||||
command("call mkdir('Xdir1/empty')")
|
||||
command('split Xdir1/Xfile')
|
||||
command("call setline(1, ['a', 'b'])")
|
||||
command('w')
|
||||
command('w Xdir1/subdir/Xfile')
|
||||
command('close')
|
||||
|
||||
eq(1, eval("isdirectory('Xdir1')"))
|
||||
eq(eval("['a', 'b']"), eval("readfile('Xdir1/Xfile')"))
|
||||
eq(1, eval("isdirectory('Xdir1/subdir')"))
|
||||
eq(eval("['a', 'b']"), eval("readfile('Xdir1/subdir/Xfile')"))
|
||||
eq(1, eval("isdirectory('Xdir1/empty')"))
|
||||
eq(0, eval("delete('Xdir1', 'rf')"))
|
||||
eq(0, eval("isdirectory('Xdir1')"))
|
||||
eq(-1, eval("delete('Xdir1', 'd')"))
|
||||
end)
|
||||
|
||||
it('symlink delete', function()
|
||||
source([[
|
||||
split Xfile
|
||||
@@ -36,4 +63,55 @@ describe('Test for delete()', function()
|
||||
eq(-1, eval("delete('Xlink')"))
|
||||
eq(0, eval("delete('Xfile')"))
|
||||
end)
|
||||
|
||||
it('symlink directory delete', function()
|
||||
command("call mkdir('Xdir1')")
|
||||
if helpers.iswin() then
|
||||
command("silent !mklink /j Xlink Xdir1")
|
||||
else
|
||||
command("silent !ln -s Xdir1 Xlink")
|
||||
end
|
||||
eq(1, eval("isdirectory('Xdir1')"))
|
||||
eq(1, eval("isdirectory('Xlink')"))
|
||||
-- Delete the link, not the directory
|
||||
eq(0, eval("delete('Xlink')"))
|
||||
eq(-1, eval("delete('Xlink')"))
|
||||
eq(0, eval("delete('Xdir1', 'd')"))
|
||||
end)
|
||||
|
||||
it('symlink recursive delete', function()
|
||||
source([[
|
||||
call mkdir('Xdir3')
|
||||
call mkdir('Xdir3/subdir')
|
||||
call mkdir('Xdir4')
|
||||
split Xdir3/Xfile
|
||||
call setline(1, ['a', 'b'])
|
||||
w
|
||||
w Xdir3/subdir/Xfile
|
||||
w Xdir4/Xfile
|
||||
close
|
||||
if has('win32')
|
||||
silent !mklink /j Xdir3\Xlink Xdir4
|
||||
else
|
||||
silent !ln -s ../Xdir4 Xdir3/Xlink
|
||||
endif
|
||||
]])
|
||||
|
||||
eq(1, eval("isdirectory('Xdir3')"))
|
||||
eq(eval("['a', 'b']"), eval("readfile('Xdir3/Xfile')"))
|
||||
eq(1, eval("isdirectory('Xdir3/subdir')"))
|
||||
eq(eval("['a', 'b']"), eval("readfile('Xdir3/subdir/Xfile')"))
|
||||
eq(1, eval("isdirectory('Xdir4')"))
|
||||
eq(1, eval("isdirectory('Xdir3/Xlink')"))
|
||||
eq(eval("['a', 'b']"), eval("readfile('Xdir4/Xfile')"))
|
||||
|
||||
eq(0, eval("delete('Xdir3', 'rf')"))
|
||||
eq(0, eval("isdirectory('Xdir3')"))
|
||||
eq(-1, eval("delete('Xdir3', 'd')"))
|
||||
-- symlink is deleted, not the directory it points to
|
||||
eq(1, eval("isdirectory('Xdir4')"))
|
||||
eq(eval("['a', 'b']"), eval("readfile('Xdir4/Xfile')"))
|
||||
eq(0, eval("delete('Xdir4/Xfile')"))
|
||||
eq(0, eval("delete('Xdir4', 'd')"))
|
||||
end)
|
||||
end)
|
||||
|
||||
@@ -20,7 +20,6 @@ describe('packadd', function()
|
||||
|
||||
func SetUp()
|
||||
let s:topdir = expand(getcwd() . '/Xdir')
|
||||
call delete(s:topdir, 'rf')
|
||||
exe 'set packpath=' . s:topdir
|
||||
let s:plugdir = expand(s:topdir . '/pack/mine/opt/mytest')
|
||||
endfunc
|
||||
|
||||
Reference in New Issue
Block a user