Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
TASTE
uPython-mirror
Commits
6c8b57a9
Commit
6c8b57a9
authored
Mar 10, 2017
by
Damien George
Browse files
tests/extmod: Add more tests for VFS FAT.
parent
c9a3a68a
Changes
2
Hide whitespace changes
Inline
Side-by-side
tests/extmod/vfs_fat_more.py
0 → 100644
View file @
6c8b57a9
import
sys
import
uerrno
try
:
import
uos_vfs
as
uos
open
=
uos
.
vfs_open
except
ImportError
:
import
uos
try
:
uos
.
VfsFat
except
AttributeError
:
print
(
"SKIP"
)
sys
.
exit
()
class
RAMFS
:
SEC_SIZE
=
512
def
__init__
(
self
,
blocks
):
self
.
data
=
bytearray
(
blocks
*
self
.
SEC_SIZE
)
def
readblocks
(
self
,
n
,
buf
):
#print("readblocks(%s, %x(%d))" % (n, id(buf), len(buf)))
for
i
in
range
(
len
(
buf
)):
buf
[
i
]
=
self
.
data
[
n
*
self
.
SEC_SIZE
+
i
]
def
writeblocks
(
self
,
n
,
buf
):
#print("writeblocks(%s, %x)" % (n, id(buf)))
for
i
in
range
(
len
(
buf
)):
self
.
data
[
n
*
self
.
SEC_SIZE
+
i
]
=
buf
[
i
]
def
ioctl
(
self
,
op
,
arg
):
#print("ioctl(%d, %r)" % (op, arg))
if
op
==
4
:
# BP_IOCTL_SEC_COUNT
return
len
(
self
.
data
)
//
self
.
SEC_SIZE
if
op
==
5
:
# BP_IOCTL_SEC_SIZE
return
self
.
SEC_SIZE
try
:
bdev
=
RAMFS
(
50
)
bdev2
=
RAMFS
(
50
)
except
MemoryError
:
print
(
"SKIP"
)
sys
.
exit
()
uos
.
VfsFat
.
mkfs
(
bdev
)
uos
.
mount
(
bdev
,
'/'
)
print
(
uos
.
getcwd
())
f
=
open
(
'test.txt'
,
'w'
)
f
.
write
(
'hello'
)
f
.
close
()
print
(
uos
.
listdir
())
print
(
uos
.
listdir
(
'/'
))
print
(
uos
.
stat
(
''
)[:
-
3
])
print
(
uos
.
stat
(
'/'
)[:
-
3
])
print
(
uos
.
stat
(
'test.txt'
)[:
-
3
])
print
(
uos
.
stat
(
'/test.txt'
)[:
-
3
])
f
=
open
(
'/test.txt'
)
print
(
f
.
read
())
f
.
close
()
uos
.
rename
(
'test.txt'
,
'test2.txt'
)
print
(
uos
.
listdir
())
uos
.
rename
(
'test2.txt'
,
'/test3.txt'
)
print
(
uos
.
listdir
())
uos
.
rename
(
'/test3.txt'
,
'test4.txt'
)
print
(
uos
.
listdir
())
uos
.
rename
(
'/test4.txt'
,
'/test5.txt'
)
print
(
uos
.
listdir
())
uos
.
mkdir
(
'dir'
)
print
(
uos
.
listdir
())
uos
.
mkdir
(
'/dir2'
)
print
(
uos
.
listdir
())
uos
.
mkdir
(
'dir/subdir'
)
print
(
uos
.
listdir
(
'dir'
))
for
exist
in
(
''
,
'/'
,
'dir'
,
'/dir'
,
'dir/subdir'
):
try
:
uos
.
mkdir
(
exist
)
except
OSError
as
er
:
print
(
'mkdir OSError'
,
er
.
args
[
0
]
==
17
)
# EEXIST
uos
.
chdir
(
'/'
)
print
(
uos
.
stat
(
'test5.txt'
)[:
-
3
])
uos
.
VfsFat
.
mkfs
(
bdev2
)
uos
.
mount
(
bdev2
,
'/sys'
)
print
(
uos
.
listdir
())
print
(
uos
.
listdir
(
'sys'
))
print
(
uos
.
listdir
(
'/sys'
))
uos
.
rmdir
(
'dir2'
)
uos
.
remove
(
'test5.txt'
)
print
(
uos
.
listdir
())
uos
.
umount
(
'/'
)
print
(
uos
.
getcwd
())
print
(
uos
.
listdir
())
print
(
uos
.
listdir
(
'sys'
))
tests/extmod/vfs_fat_more.py.exp
0 → 100644
View file @
6c8b57a9
/
['test.txt']
['test.txt']
(16384, 0, 0, 0, 0, 0, 0)
(16384, 0, 0, 0, 0, 0, 0)
(32768, 0, 0, 0, 0, 0, 5)
(32768, 0, 0, 0, 0, 0, 5)
hello
['test2.txt']
['test3.txt']
['test4.txt']
['test5.txt']
['test5.txt', 'dir']
['test5.txt', 'dir', 'dir2']
['subdir']
mkdir OSError True
mkdir OSError True
mkdir OSError True
mkdir OSError True
mkdir OSError True
(32768, 0, 0, 0, 0, 0, 5)
['sys', 'test5.txt', 'dir', 'dir2']
[]
[]
['sys', 'dir']
/
['sys']
[]
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment