summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2024-12-17 15:15:59 +1100
committerDamien George <damien@micropython.org>2024-12-19 15:12:04 +1100
commite323da729101c9fe626b5b08cafef2dbdbb70441 (patch)
treecc8d2f5bc56e145667d055f4b7a5ce9473052699
parent3c1722e705002b2182f138a114f4408ae7ebac38 (diff)
downloadmicropython-e323da729101c9fe626b5b08cafef2dbdbb70441.tar.gz
micropython-e323da729101c9fe626b5b08cafef2dbdbb70441.zip
tests/run-tests.py: Set name of injected test module to '__main__'.
Running unittest-based tests with --via-mpy is currently broken, because the unittest test needs the module to be named `__main__`, whereas it's actually called `__injected_test`. Fix this by changing the name when the file is opened. Signed-off-by: Damien George <damien@micropython.org>
-rwxr-xr-xtests/run-tests.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/tests/run-tests.py b/tests/run-tests.py
index 6fe45707bb..c72178cd76 100755
--- a/tests/run-tests.py
+++ b/tests/run-tests.py
@@ -59,10 +59,13 @@ DIFF = os.getenv("MICROPY_DIFF", "diff -u")
os.environ["PYTHONIOENCODING"] = "utf-8"
# Code to allow a target MicroPython to import an .mpy from RAM
+# Note: the module is named `__injected_test` but it needs to have `__name__` set to
+# `__main__` so that the test sees itself as the main module, eg so unittest works.
injected_import_hook_code = """\
import sys, os, io, vfs
class __File(io.IOBase):
def __init__(self):
+ sys.modules['__injected_test'].__name__ = '__main__'
self.off = 0
def ioctl(self, request, arg):
return 0