local helpers = require('test.functional.helpers') local clear, feed, insert = helpers.clear, helpers.feed, helpers.insert local eq, eval, execute, expect = helpers.eq, helpers.eval, helpers.execute, helpers.expect describe('Test for delete()', function() before_each(clear) it('file delete', function() execute('split Xfile') execute("call setline(1, ['a', 'b'])") execute('wq') eq(eval("['a', 'b']"), eval("readfile('Xfile')")) eq(0, eval("delete('Xfile')")) eq(-1, eval("delete('Xfile')")) end) it('directory delete', function() execute("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() execute("call mkdir('Xdir1')") execute("call mkdir('Xdir1/subdir')") execute('split Xdir1/Xfile') execute("call setline(1, ['a', 'b'])") execute('w') execute('w Xdir1/subdir/Xfile') execute('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(0, eval("delete('Xdir1', 'rf')")) eq(0, eval("isdirectory('Xdir1')")) eq(-1, eval("delete('Xdir1', 'd')")) end) end)