tests: Remove .py.exp files that match with CPython 3.8.2 or newer.
Some checks failed
JavaScript code lint and formatting with Biome / eslint (push) Has been cancelled
Check code formatting / code-formatting (push) Has been cancelled
Check spelling with codespell / codespell (push) Has been cancelled
Build docs / build (push) Has been cancelled
Check examples / embedding (push) Has been cancelled
Package mpremote / build (push) Has been cancelled
.mpy file format and tools / test (push) Has been cancelled
Build ports metadata / build (push) Has been cancelled
alif port / build_alif (alif_ae3_build) (push) Has been cancelled
cc3200 port / build (push) Has been cancelled
esp32 port / build_idf (esp32_build_c2_c6) (push) Has been cancelled
esp32 port / build_idf (esp32_build_cmod_spiram_s2) (push) Has been cancelled
esp32 port / build_idf (esp32_build_s3_c3) (push) Has been cancelled
esp8266 port / build (push) Has been cancelled
mimxrt port / build (push) Has been cancelled
nrf port / build (push) Has been cancelled
powerpc port / build (push) Has been cancelled
qemu port / build_and_test_arm (bigendian) (push) Has been cancelled
qemu port / build_and_test_arm (sabrelite) (push) Has been cancelled
qemu port / build_and_test_arm (thumb_hardfp) (push) Has been cancelled
qemu port / build_and_test_arm (thumb_softfp) (push) Has been cancelled
qemu port / build_and_test_rv32 (push) Has been cancelled
qemu port / build_and_test_rv64 (push) Has been cancelled
renesas-ra port / build_renesas_ra_board (push) Has been cancelled
rp2 port / build (push) Has been cancelled
samd port / build (push) Has been cancelled
stm32 port / build_stm32 (stm32_misc_build) (push) Has been cancelled
stm32 port / build_stm32 (stm32_nucleo_build) (push) Has been cancelled
stm32 port / build_stm32 (stm32_pyb_build) (push) Has been cancelled
unix port / minimal (push) Has been cancelled
unix port / reproducible (push) Has been cancelled
unix port / standard (push) Has been cancelled
unix port / standard_v2 (push) Has been cancelled
unix port / coverage (push) Has been cancelled
unix port / coverage_32bit (push) Has been cancelled
unix port / nanbox (push) Has been cancelled
unix port / longlong (push) Has been cancelled
unix port / float (push) Has been cancelled
unix port / gil_enabled (push) Has been cancelled
unix port / stackless_clang (push) Has been cancelled
unix port / float_clang (push) Has been cancelled
unix port / settrace_stackless (push) Has been cancelled
unix port / repr_b (push) Has been cancelled
unix port / macos (push) Has been cancelled
unix port / qemu_mips (push) Has been cancelled
unix port / qemu_arm (push) Has been cancelled
unix port / qemu_riscv64 (push) Has been cancelled
unix port / sanitize_address (push) Has been cancelled
unix port / sanitize_undefined (push) Has been cancelled
webassembly port / build (push) Has been cancelled
windows port / build-vs (Debug, true, x64, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Debug, true, x86, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Debug, x64, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Debug, x86, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, true, x64, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, true, x64, dev, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, true, x64, standard, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, true, x64, standard, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, true, x86, dev, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, true, x86, dev, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, true, x86, standard, 2017, [15, 16)) (push) Has been cancelled
windows port / build-vs (Release, true, x86, standard, 2019, [16, 17)) (push) Has been cancelled
windows port / build-vs (Release, x64, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x64, standard, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x86, dev, 2022, [17, 18)) (push) Has been cancelled
windows port / build-vs (Release, x86, standard, 2022, [17, 18)) (push) Has been cancelled
windows port / build-mingw (i686, mingw32, dev) (push) Has been cancelled
windows port / build-mingw (i686, mingw32, standard) (push) Has been cancelled
windows port / build-mingw (x86_64, mingw64, dev) (push) Has been cancelled
windows port / build-mingw (x86_64, mingw64, standard) (push) Has been cancelled
windows port / cross-build-on-linux (push) Has been cancelled
zephyr port / build (push) Has been cancelled
Python code lint and formatting with ruff / ruff (push) Has been cancelled

Running the tests now requires CPython 3.8.2 or newer, which was
released February 2020 and should be widely available.

A few examples of features that were previously not supported by CPython,
but which are now:
- %-formatting for bytes and bytearray (PEP 461), CPython 3.5
- annotated variables (PEP 526), CPython 3.6
- assignment expressions (PEP 572), CPython 3.8

Note that `basics/fun_code_full.py.exp` is added here because that requires
CPython 3.10 or newer.

Signed-off-by: Damien George <damien@micropython.org>
This commit is contained in:
Damien George
2025-09-16 15:13:10 +10:00
parent e031ead6b2
commit 4c9ce826cb
27 changed files with 11 additions and 350 deletions

View File

@@ -1,6 +1,7 @@
# MicroPython Test Suite
This directory contains tests for most parts of MicroPython.
This directory contains tests for most parts of MicroPython. To run it you will need
CPython 3.8.2 or newer, which is used to validate MicroPython's behaviour.
To run all stable tests, run the "run-tests.py" script in this directory. By default
that will run the test suite against the unix port of MicroPython.

View File

@@ -1,5 +0,0 @@
False
1
(1, 2)
NameError
1

View File

@@ -1,16 +0,0 @@
4
True
2
4 5
5
1 5 5
5
2 1
1 0
any True
8
123
any True
8
[(1, 0), (2, 2), (3, 6), (4, 12)]
4

View File

@@ -1,23 +0,0 @@
scope0
1
None
scope1
[1]
1
None
scope2
[0, 1]
1
1
scope3
[0, 1]
None
None
scope4
[0, 1]
1
1
scope5
[0, 1]
1
None

View File

@@ -1,32 +0,0 @@
4
3
2
1
0
0
1
0
0
2
1
0
0
1
0
0
3
2
1
0
0
1
0
0
2
1
0
0
1
0
0
finished

View File

@@ -1,5 +0,0 @@
wait value: 1
return from send: message from wait(1)
wait got back: message from main
x = 100
got StopIteration

View File

@@ -1,3 +0,0 @@
decorator
foo
StopIteration

View File

@@ -1,51 +0,0 @@
== start ==
init
aiter
init
anext
a
anext
b
anext
c
anext
== finish ==
== start ==
init
aiter
init
anext
d
anext
e
anext
f
anext
AsyncIteratorWrapper-def
== finish ==
init
== start ==
aiter
init
anext
g
anext
h
anext
i
anext
AsyncIteratorWrapper-ghi
== finish ==
init
== start ==
aiter
init
anext
j
anext
k
anext
l
anext
AsyncIteratorWrapper-jkl
== finish ==

View File

@@ -1,32 +0,0 @@
init
aiter
anext
f start: 20
coro yielded: 21
coro yielded: 22
f returned: 23
x 0
anext
f start: 20
coro yielded: 21
coro yielded: 22
f returned: 23
x 1
anext
f start: 20
coro yielded: 21
coro yielded: 22
f returned: 23
x 2
anext
f start: 20
coro yielded: 21
coro yielded: 22
f returned: 23
x 3
anext
f start: 20
coro yielded: 21
coro yielded: 22
f returned: 23
finished

View File

@@ -1,2 +0,0 @@
SyntaxError
SyntaxError

View File

@@ -1,11 +0,0 @@
enter
body
exit None None
finished
enter
1
exit <class 'ValueError'> error
ValueError
enter
exit <class 'BaseException'>
BaseException

View File

@@ -1,17 +0,0 @@
enter
f start: 10
coro yielded: 11
coro yielded: 12
f returned: 13
body start
f start: 30
coro yielded: 31
coro yielded: 32
body f returned: 33
body end
exit None None
f start: 20
coro yielded: 21
coro yielded: 22
f returned: 23
finished

View File

@@ -1,15 +0,0 @@
enter
body
exit None None
finished
enter
body
exit None None
finally
finished
enter
body
exit None None
finally inner
finally outer
finished

View File

@@ -1,15 +0,0 @@
enter
body
exit None None
finished
enter
body
exit None None
finally
finished
enter
body
exit None None
finally inner
finally outer
finished

View File

@@ -1,5 +0,0 @@
b'%'
b'=1='
b'=1=2='
b'=str='
b"=b'str'="

View File

@@ -1,12 +0,0 @@
__imul__
__imatmul__
__ifloordiv__
__itruediv__
__imod__
__ipow__
__ior__
__ixor__
__iand__
__ilshift__
__irshift__
TypeError

View File

@@ -1 +0,0 @@
['a', 'b', 'c', 'd', 'e']

View File

@@ -0,0 +1,9 @@
<class 'bytes'>
(None,)
fun_code_full.py
<class 'int'>
f
True
0
0
non-contiguous

View File

@@ -1,5 +0,0 @@
100000
165
65535
123
83

View File

@@ -1,19 +0,0 @@
__pos__ called
__pos__ called
__neg__ called
__invert__ called
__mul__ called
__matmul__ called
__truediv__ called
__floordiv__ called
__iadd__ called
__isub__ called
__mod__ called
__pow__ called
__or__ called
__and__ called
__xor__ called
__lshift__ called
__rshift__ called
['a', 'b', 'c']
False

View File

@@ -1,9 +0,0 @@
x=1
x=00000001
a x=1 b 2 c
a x=00000001 b 2 c
a f() + g("foo") + h()=15 b
a f() + g("foo") + h()=0000000f b
a 1,=(1,) b
a x,y,=(1, 2) b
a x,1=(1, 1) b

View File

@@ -1,9 +0,0 @@
4 0
continue
4 1
continue
4 2
continue
4 3
continue
None

View File

@@ -1,6 +0,0 @@
start
after sleep
short
long
negative
took 200 400 0

View File

@@ -1,41 +0,0 @@
False
True
False
have lock
----
task start 1
task start 2
task start 3
task have 1 0
task have 2 0
task have 3 0
task have 1 1
task have 2 1
task have 3 1
task have 1 2
task end 1
task have 2 2
task end 2
task have 3 2
task end 3
----
task have True
task release False
task have True
task release False
task have again
task have again
----
task got 0
task release 0
task cancel 1
task got 2
task release 2
False
----
task got 0
task cancel 1
task release 0
task got 2
task cancel 2
False

View File

@@ -1,12 +0,0 @@
start
task 1
task 2
----
start
hello
world
took 200 200
task_raise
ValueError
task_raise
ValueError

View File

@@ -1,2 +0,0 @@
[1, 2]
[None]

View File

@@ -1 +0,0 @@
1-a2