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>
pull/6287/head
Damien George 2020-07-26 14:43:13 +10:00
rodzic 0c0cef9870
commit 8da40baa47
2 zmienionych plików z 12 dodań i 26 usunięć

Wyświetl plik

@ -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):

Wyświetl plik

@ -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):