diff options
author | kylo252 <59826753+kylo252@users.noreply.github.com> | 2023-07-16 14:50:10 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-16 05:50:10 -0700 |
commit | f660b794808ac809ee8cafe82ddd824840bc8e2c (patch) | |
tree | 4e43accfbb4b60414caa99e03cdec54203d676cf | |
parent | c3de6524a53dc355b1c8074eb6940e9e73714057 (diff) | |
download | rneovim-f660b794808ac809ee8cafe82ddd824840bc8e2c.tar.gz rneovim-f660b794808ac809ee8cafe82ddd824840bc8e2c.tar.bz2 rneovim-f660b794808ac809ee8cafe82ddd824840bc8e2c.zip |
test(fs): get tmpdir robustly #23021
Problem:
helpers.tmpname() may create a local file, depending on circumstances.
Solution:
Only use helpers.tmpname() for its parent directory (the "temp root").
Use fs_mkdtemp() to actually get a unique name.
-rw-r--r-- | test/functional/core/fileio_spec.lua | 5 | ||||
-rw-r--r-- | test/functional/lua/watch_spec.lua | 9 |
2 files changed, 3 insertions, 11 deletions
diff --git a/test/functional/core/fileio_spec.lua b/test/functional/core/fileio_spec.lua index 4236a4ff47..27a32ce6f8 100644 --- a/test/functional/core/fileio_spec.lua +++ b/test/functional/core/fileio_spec.lua @@ -19,7 +19,6 @@ local meths = helpers.meths local mkdir = helpers.mkdir local sleep = helpers.sleep local read_file = helpers.read_file -local tmpname = helpers.tmpname local trim = helpers.trim local currentdir = helpers.funcs.getcwd local assert_alive = helpers.assert_alive @@ -266,9 +265,7 @@ describe('tmpdir', function() before_each(function() -- Fake /tmp dir so that we can mess it up. - os_tmpdir = tmpname() - os.remove(os_tmpdir) - mkdir(os_tmpdir) + os_tmpdir = vim.loop.fs_mkdtemp(vim.fs.dirname(helpers.tmpname()) .. '/nvim_XXXXXXXXXX') end) after_each(function() diff --git a/test/functional/lua/watch_spec.lua b/test/functional/lua/watch_spec.lua index f041f4f1b6..d802a955fa 100644 --- a/test/functional/lua/watch_spec.lua +++ b/test/functional/lua/watch_spec.lua @@ -3,7 +3,6 @@ local eq = helpers.eq local exec_lua = helpers.exec_lua local clear = helpers.clear local is_os = helpers.is_os -local mkdir = helpers.mkdir describe('vim._watch', function() before_each(function() @@ -12,9 +11,7 @@ describe('vim._watch', function() describe('watch', function() it('detects file changes', function() - local root_dir = helpers.tmpname() - os.remove(root_dir) - mkdir(root_dir) + local root_dir = vim.loop.fs_mkdtemp(vim.fs.dirname(helpers.tmpname()) .. '/nvim_XXXXXXXXXX') local result = exec_lua( [[ @@ -100,9 +97,7 @@ describe('vim._watch', function() describe('poll', function() it('detects file changes', function() - local root_dir = helpers.tmpname() - os.remove(root_dir) - mkdir(root_dir) + local root_dir = vim.loop.fs_mkdtemp(vim.fs.dirname(helpers.tmpname()) .. '/nvim_XXXXXXXXXX') local result = exec_lua( [[ |