micropython: add micropython component
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
# test ujson.dump in combination with uio.IOBase
|
||||
|
||||
try:
|
||||
import uio as io
|
||||
import ujson as json
|
||||
except ImportError:
|
||||
try:
|
||||
import io, json
|
||||
except ImportError:
|
||||
print("SKIP")
|
||||
raise SystemExit
|
||||
|
||||
if not hasattr(io, "IOBase"):
|
||||
print("SKIP")
|
||||
raise SystemExit
|
||||
|
||||
|
||||
# a user stream that only has the write method
|
||||
class S(io.IOBase):
|
||||
def __init__(self):
|
||||
self.buf = ""
|
||||
|
||||
def write(self, buf):
|
||||
if type(buf) == bytearray:
|
||||
# uPy passes a bytearray, CPython passes a str
|
||||
buf = str(buf, "ascii")
|
||||
self.buf += buf
|
||||
return len(buf)
|
||||
|
||||
|
||||
# dump to the user stream
|
||||
s = S()
|
||||
json.dump([123, {}], s)
|
||||
print(s.buf)
|
Reference in New Issue
Block a user