summaryrefslogtreecommitdiff
path: root/tests/micropython/heapalloc.py
diff options
context:
space:
mode:
authorMark <56205165+gamblor21@users.noreply.github.com>2021-03-15 20:00:13 -0500
committerGitHub <noreply@github.com>2021-03-15 20:00:13 -0500
commite326d7ca800ce7101ddce001320c5349ee5ddeb6 (patch)
tree000a06790af7a8d27e9ba9fc27e10015815e1509 /tests/micropython/heapalloc.py
parent307d2a99febbf6cdff824131dddc2ef938f5ea13 (diff)
parentf7a988b9b307141611b07f6dc9da5b26e982c154 (diff)
Merge branch 'main' into rp_dp_parallel
Diffstat (limited to 'tests/micropython/heapalloc.py')
-rw-r--r--tests/micropython/heapalloc.py27
1 files changed, 19 insertions, 8 deletions
diff --git a/tests/micropython/heapalloc.py b/tests/micropython/heapalloc.py
index f74bb92c8..99f157105 100644
--- a/tests/micropython/heapalloc.py
+++ b/tests/micropython/heapalloc.py
@@ -5,18 +5,26 @@ import micropython
# Check for stackless build, which can't call functions without
# allocating a frame on heap.
try:
- def stackless(): pass
- micropython.heap_lock(); stackless(); micropython.heap_unlock()
+
+ def stackless():
+ pass
+
+ micropython.heap_lock()
+ stackless()
+ micropython.heap_unlock()
except RuntimeError:
print("SKIP")
raise SystemExit
+
def f1(a):
print(a)
+
def f2(a, b=2):
print(a, b)
+
def f3(a, b, c, d):
x1 = x2 = a
x3 = x4 = b
@@ -24,19 +32,22 @@ def f3(a, b, c, d):
x7 = x8 = d
print(x1, x3, x5, x7, x2 + x4 + x6 + x8)
+
global_var = 1
+
def test():
global global_var, global_exc
- global_var = 2 # set an existing global variable
+ global_var = 2 # set an existing global variable
for i in range(2): # for loop
- f1(i) # function call
- f1(i * 2 + 1) # binary operation with small ints
- f1(a=i) # keyword arguments
- f2(i) # default arg (second one)
- f2(i, i) # 2 args
+ f1(i) # function call
+ f1(i * 2 + 1) # binary operation with small ints
+ f1(a=i) # keyword arguments
+ f2(i) # default arg (second one)
+ f2(i, i) # 2 args
f3(1, 2, 3, 4) # function with lots of local state
+
# call test() with heap allocation disabled
micropython.heap_lock()
test()