From 5f5f2d89456585c4dba337c879a34f322dcae32d Mon Sep 17 00:00:00 2001 From: "Justin M. Keyes" Date: Sun, 5 Jun 2016 02:51:50 -0400 Subject: test: rmdir(): recursively delete --- test/functional/helpers.lua | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/test/functional/helpers.lua b/test/functional/helpers.lua index 37b7bf664c..846ce72e14 100644 --- a/test/functional/helpers.lua +++ b/test/functional/helpers.lua @@ -345,10 +345,18 @@ local function rmdir(path) end for file in lfs.dir(path) do if file ~= '.' and file ~= '..' then - local ret, err = os.remove(path..'/'..file) - if not ret then - error('os.remove: '..err) - return nil + local abspath = path..'/'..file + if lfs.attributes(abspath, 'mode') == 'directory' then + local ret = rmdir(abspath) -- recurse + if not ret then + return nil + end + else + local ret, err = os.remove(abspath) + if not ret then + error('os.remove: '..err) + return nil + end end end end -- cgit