aboutsummaryrefslogtreecommitdiff
path: root/tests/extmod
diff options
context:
space:
mode:
authorrobert2020-04-29 18:13:22 +0200
committerDamien George2020-05-08 21:37:51 +1000
commita5ea4b9f3f3fd394afdf65223b5e55c8d9fccc53 (patch)
treeb5bf89a068d617cbd5785e2b54f4a6d4c2f0dbfa /tests/extmod
parent037c83b0ed47abe68c47c8fa617fdc0041b699f0 (diff)
extmod/vfs_lfsx: Fix path handling in uos.stat() to consider cur dir.
This fixes the bug, that stat(filename) would not consider the current working directory. So if e.g. the cwd is "lib", then stat("main.py") would return the info for "/main.py" instead of "/lib/main.py".
Diffstat (limited to 'tests/extmod')
-rw-r--r--tests/extmod/vfs_lfs.py8
-rw-r--r--tests/extmod/vfs_lfs.py.exp4
2 files changed, 12 insertions, 0 deletions
diff --git a/tests/extmod/vfs_lfs.py b/tests/extmod/vfs_lfs.py
index c3656fe68..1d47605c5 100644
--- a/tests/extmod/vfs_lfs.py
+++ b/tests/extmod/vfs_lfs.py
@@ -101,6 +101,14 @@ def test(bdev, vfs_class):
print(vfs.getcwd())
vfs.chdir("/testdir")
print(vfs.getcwd())
+
+ # create file in directory to make sure paths are relative
+ vfs.open("test2", "w").close()
+ print(vfs.stat("test2"))
+ print(vfs.stat("/testdir/test2"))
+ vfs.remove("test2")
+
+ # chdir back to root and remove testdir
vfs.chdir("/")
print(vfs.getcwd())
vfs.rmdir("testdir")
diff --git a/tests/extmod/vfs_lfs.py.exp b/tests/extmod/vfs_lfs.py.exp
index 7d4aed041..de739e733 100644
--- a/tests/extmod/vfs_lfs.py.exp
+++ b/tests/extmod/vfs_lfs.py.exp
@@ -20,6 +20,8 @@ write 3
[('test', 32768, 0, 8), ('testdir', 16384, 0, 0)]
/
/testdir
+(32768, 0, 0, 0, 0, 0, 0, 0, 0, 0)
+(32768, 0, 0, 0, 0, 0, 0, 0, 0, 0)
/
test <class 'VfsLfs2'>
(1024, 1024, 30, 28, 28, 0, 0, 0, 0, 255)
@@ -43,4 +45,6 @@ write 3
[('testdir', 16384, 0, 0), ('test', 32768, 0, 8)]
/
/testdir
+(32768, 0, 0, 0, 0, 0, 0, 0, 0, 0)
+(32768, 0, 0, 0, 0, 0, 0, 0, 0, 0)
/