tests/micropython: Improve .mpy import tests to run on more targets.
All imports are now tested to see if the test should be skipped, UserFile.read is removed, and UserFile.readinto is made more efficient. Signed-off-by: Damien George <damien@micropython.org>
This commit is contained in:
parent
0c0cef9870
commit
8da40baa47
@ -1,11 +1,9 @@
|
||||
# test importing of invalid .mpy files
|
||||
|
||||
import sys, uio
|
||||
|
||||
try:
|
||||
uio.IOBase
|
||||
import uos
|
||||
import sys, uio, uos
|
||||
|
||||
uio.IOBase
|
||||
uos.mount
|
||||
except (ImportError, AttributeError):
|
||||
print("SKIP")
|
||||
@ -14,18 +12,13 @@ except (ImportError, AttributeError):
|
||||
|
||||
class UserFile(uio.IOBase):
|
||||
def __init__(self, data):
|
||||
self.data = data
|
||||
self.data = memoryview(data)
|
||||
self.pos = 0
|
||||
|
||||
def read(self):
|
||||
return self.data
|
||||
|
||||
def readinto(self, buf):
|
||||
n = 0
|
||||
while n < len(buf) and self.pos < len(self.data):
|
||||
buf[n] = self.data[self.pos]
|
||||
n += 1
|
||||
self.pos += 1
|
||||
n = min(len(buf), len(self.data) - self.pos)
|
||||
buf[:n] = self.data[self.pos : self.pos + n]
|
||||
self.pos += n
|
||||
return n
|
||||
|
||||
def ioctl(self, req, arg):
|
||||
|
@ -1,11 +1,9 @@
|
||||
# test importing of .mpy files with native code (x64 only)
|
||||
|
||||
import sys, uio
|
||||
|
||||
try:
|
||||
uio.IOBase
|
||||
import uos
|
||||
import sys, uio, uos
|
||||
|
||||
uio.IOBase
|
||||
uos.mount
|
||||
except (ImportError, AttributeError):
|
||||
print("SKIP")
|
||||
@ -18,18 +16,13 @@ if not (sys.platform == "linux" and sys.maxsize > 2 ** 32):
|
||||
|
||||
class UserFile(uio.IOBase):
|
||||
def __init__(self, data):
|
||||
self.data = data
|
||||
self.data = memoryview(data)
|
||||
self.pos = 0
|
||||
|
||||
def read(self):
|
||||
return self.data
|
||||
|
||||
def readinto(self, buf):
|
||||
n = 0
|
||||
while n < len(buf) and self.pos < len(self.data):
|
||||
buf[n] = self.data[self.pos]
|
||||
n += 1
|
||||
self.pos += 1
|
||||
n = min(len(buf), len(self.data) - self.pos)
|
||||
buf[:n] = self.data[self.pos : self.pos + n]
|
||||
self.pos += n
|
||||
return n
|
||||
|
||||
def ioctl(self, req, arg):
|
||||
|
Loading…
Reference in New Issue
Block a user