aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authormitchell <70453897+orbitalquark@users.noreply.github.com>2020-10-25 10:50:01 -0400
committermitchell <70453897+orbitalquark@users.noreply.github.com>2020-10-25 10:50:01 -0400
commitaa141bc281d4895273fe1f9b7003f379a7abfb8f (patch)
tree846187c25d81f266a7c333d81b1f88fdc3f3a6fb /test
parente82eddd9e007597e8283922653de0e5abb94c0dc (diff)
downloadtextadept-aa141bc281d4895273fe1f9b7003f379a7abfb8f.tar.gz
textadept-aa141bc281d4895273fe1f9b7003f379a7abfb8f.zip
Handle more types of recursive symlinks in `lfs.walk()`.
Diffstat (limited to 'test')
-rw-r--r--test/test.lua15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/test.lua b/test/test.lua
index b1b4ee74..563cdb3f 100644
--- a/test/test.lua
+++ b/test/test.lua
@@ -742,6 +742,21 @@ function test_lfs_ext_walk_symlinks()
table.sort(expected_files)
assert_equal(files, expected_files)
os.execute('rm -r ' .. dir)
+
+ lfs.mkdir(dir)
+ io.open(dir .. '/foo', 'w'):close()
+ local cwd = lfs.currentdir()
+ lfs.chdir(dir)
+ lfs.link('.', 'bar', true)
+ lfs.mkdir(dir .. '/baz')
+ lfs.mkdir(dir .. '/baz/quux')
+ lfs.chdir(dir .. '/baz/quux')
+ lfs.link('../../baz/', 'foobar', true)
+ lfs.chdir(cwd)
+ local count = 0
+ for filename in lfs.walk(dir) do count = count + 1 end
+ assert_equal(count, 1)
+ os.execute('rm -r ' .. dir)
end
function test_lfs_ext_abs_path()