summaryrefslogtreecommitdiff
path: root/tests/ports/unix/extra_coverage.py
diff options
context:
space:
mode:
authorYoctopuce dev <dev@yoctopuce.com>2025-06-30 23:28:20 +0200
committerDamien George <damien@micropython.org>2025-07-09 11:54:21 +1000
commitc4a88f2ce7da87d5f635ec25edba481917020fd8 (patch)
tree6d8c704092f58c09136d5bd41563a7c73c57e6f4 /tests/ports/unix/extra_coverage.py
parent49159ef6b7e283681cb1c2dfe44cdf14bd397467 (diff)
py/obj: Add functions to retrieve large integers from mp_obj_t.
This commit provides helpers to retrieve integer values from mp_obj_t when the content does not fit in a 32 bits integer, without risking an implicit wrap due to an int overflow. Signed-off-by: Yoctopuce dev <dev@yoctopuce.com>
Diffstat (limited to 'tests/ports/unix/extra_coverage.py')
-rw-r--r--tests/ports/unix/extra_coverage.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/tests/ports/unix/extra_coverage.py b/tests/ports/unix/extra_coverage.py
index ec68a5550..72f5fe56b 100644
--- a/tests/ports/unix/extra_coverage.py
+++ b/tests/ports/unix/extra_coverage.py
@@ -6,6 +6,16 @@ except NameError:
import errno
import io
+import uctypes
+
+# create an int-like variable used for coverage of `mp_obj_get_ll`
+buf = bytearray(b"\xde\xad\xbe\xef")
+struct = uctypes.struct(
+ uctypes.addressof(buf),
+ {"f32": uctypes.UINT32 | 0},
+ uctypes.BIG_ENDIAN,
+)
+deadbeef = struct.f32
data = extra_coverage()