circuitpython/tests/extmod
Damien George 14ba32bb20 extmod/vfs_rom: Add bounds checking for all filesystem accesses.
Testing with ROMFS shows that it is relatively easy to end up with a
corrupt filesystem on the device -- eg due to the ROMFS deploy process
stopping half way through -- which could lead to hard crashes.  Notably,
there can be boot loops trying to mount a corrupt filesystem, crashes when
importing modules like `os` that first scan the filesystem for `os.py`, and
crashing when deploying a new ROMFS in certain cases because the old one is
removed while still mounted.

The main problem is that `mp_decode_uint()` has an loop that keeps going as
long as it reads 0xff byte values, which can happen in the case of erased
and unwritten flash.

This commit adds full bounds checking in the new `mp_decode_uint_checked()`
function, and that makes all ROMFS filesystem accesses robust.

Signed-off-by: Damien George <damien@micropython.org>
2025-02-26 16:11:19 +11:00
..
asyncio_as_uasyncio.py tests/extmod/asyncio_as_uasyncio.py: Fix qstr order dependency. 2023-10-30 11:10:02 +11:00
asyncio_as_uasyncio.py.exp tests/extmod/asyncio_as_uasyncio.py: Fix qstr order dependency. 2023-10-30 11:10:02 +11:00
asyncio_await_return.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_basic.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_basic.py.exp tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_basic2.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_cancel_fair.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_cancel_fair2.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_cancel_self.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_cancel_self.py.exp tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_cancel_task.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_cancel_wait_on_finished.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_current_task.py extmod/asyncio: Make current_task raise exception when there is no task. 2024-02-28 15:48:51 +11:00
asyncio_event.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_event_fair.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_exception.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_fair.py tests/extmod: Remove asyncio .exp files that match CPython output. 2024-01-24 11:20:06 +11:00
asyncio_gather.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_gather.py.exp tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_gather_finished_early.py extmod/asyncio: Support gather of tasks that finish early. 2024-01-22 12:03:21 +11:00
asyncio_gather_notimpl.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_gather_notimpl.py.exp tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_get_event_loop.py tests/extmod: Make get_event_loop tests compatible with CPython 3.12. 2024-07-18 11:08:48 +10:00
asyncio_heaplock.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_heaplock.py.exp tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_lock.py tests/extmod: Remove asyncio .exp files that match CPython output. 2024-01-24 11:20:06 +11:00
asyncio_lock.py.exp tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_lock_cancel.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_loop_stop.py tests/extmod: Add .exp test files for asyncio.get_event_loop tests. 2024-05-27 13:56:55 +10:00
asyncio_micropython.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_micropython.py.exp tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_new_event_loop.py tests/extmod: Workaround CPython warning in asyncio_new_event_loop test. 2024-11-28 23:12:34 +11:00
asyncio_set_exception_handler.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_task_done.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_threadsafeflag.py tests/extmod/asyncio_threadsafeflag.py: Update for unix select. 2023-09-29 17:58:40 +10:00
asyncio_threadsafeflag.py.exp tests/extmod/asyncio_threadsafeflag.py: Update for unix select. 2023-09-29 17:58:40 +10:00
asyncio_wait_for.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_wait_for.py.exp tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_wait_for_fwd.py tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_wait_for_fwd.py.exp tests: Rename uasyncio to asyncio. 2023-06-19 17:33:03 +10:00
asyncio_wait_task.py tests/extmod/asyncio_wait_task.py: Add test for raise and delayed wait. 2024-01-23 11:13:35 +11:00
asyncio_wait_task.py.exp tests/extmod/asyncio_wait_task.py: Add test for raise and delayed wait. 2024-01-23 11:13:35 +11:00
binascii_a2b_base64.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
binascii_b2a_base64.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
binascii_crc32.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
binascii_hexlify.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
binascii_unhexlify.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
btree1.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
btree1.py.exp tests/extmod/btree1: Checks for put, seq, string print and unsupported binary op. 2016-10-05 00:17:22 +11:00
btree_closed.py extmod/modbtree: Add checks for already-closed database. 2024-07-22 10:42:29 +10:00
btree_closed.py.exp extmod/modbtree: Add checks for already-closed database. 2024-07-22 10:42:29 +10:00
btree_error.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
btree_error.py.exp tests/extmod: Add btree test for errors raised by btree DB library. 2020-04-27 23:59:09 +10:00
btree_gc.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
btree_gc.py.exp extmod/modbtree: Retain reference to underlying stream so it's not GC'd. 2020-05-02 16:08:04 +10:00
cryptolib_aes128_cbc.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes128_cbc.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes128_ctr.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes128_ctr.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes128_ecb.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes128_ecb.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes128_ecb_enc.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes128_ecb_enc.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes128_ecb_inpl.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes128_ecb_inpl.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes128_ecb_into.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes128_ecb_into.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes256_cbc.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes256_cbc.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes256_ecb.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
cryptolib_aes256_ecb.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
deflate_compress.py tests/extmod/deflate_compress.py: Add a test for optimal compression. 2023-11-30 12:13:29 +11:00
deflate_compress.py.exp tests/extmod/deflate_compress.py: Add a test for optimal compression. 2023-11-30 12:13:29 +11:00
deflate_decompress.py tests/extmod/deflate_decompress.py: Skip test when not enough memory. 2023-09-29 12:01:04 +10:00
deflate_decompress.py.exp tests/extmod: Add deflate.DeflateIO tests. 2023-07-21 19:32:42 +10:00
deflate_stream_error.py tests/extmod: Add deflate.DeflateIO tests. 2023-07-21 19:32:42 +10:00
deflate_stream_error.py.exp tests/extmod: Add deflate.DeflateIO tests. 2023-07-21 19:32:42 +10:00
framebuf1.py extmod/modframebuf: Remove FrameBuffer1 from natmod build. 2023-10-16 12:18:43 +11:00
framebuf1.py.exp extmod/modframebuf: Fix FrameBuffer get-buffer implementation. 2023-10-16 12:18:08 +11:00
framebuf2.py tests/extmod/framebuf: Fix buffer size issues. 2023-06-21 09:49:03 +01:00
framebuf2.py.exp extmod/modframebuf: Add 2-bit color format (GS2_HMSB). 2017-12-14 17:13:02 +11:00
framebuf4.py tests: Format all Python code with black, except tests in basics subdir. 2020-03-30 13:21:58 +11:00
framebuf4.py.exp tests/extmod/framebuf4: Add tests for GS4_HMSB framebuf format. 2017-01-25 23:20:19 +11:00
framebuf8.py tests: Format all Python code with black, except tests in basics subdir. 2020-03-30 13:21:58 +11:00
framebuf8.py.exp extmod/modframebuf: Add 8-bit greyscale format (GS8). 2017-12-14 17:36:13 +11:00
framebuf16.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
framebuf16.py.exp extmod/modframebuf: Make FrameBuffer handle 16bit depth. 2016-12-01 16:43:25 +11:00
framebuf_bounds.py extmod/modframebuf: Fix FrameBuffer size check for stride corner-cases. 2024-10-22 13:05:31 +11:00
framebuf_bounds.py.exp extmod/modframebuf: Fix FrameBuffer size check for stride corner-cases. 2024-10-22 13:05:31 +11:00
framebuf_ellipse.py extmod/modframebuf: Fix 0 radius bug in FrameBuffer.ellipse. 2024-11-28 22:56:44 +11:00
framebuf_ellipse.py.exp extmod/modframebuf: Fix 0 radius bug in FrameBuffer.ellipse. 2024-11-28 22:56:44 +11:00
framebuf_palette.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
framebuf_palette.py.exp extmod/modframebuf: Enable blit between different formats via a palette. 2021-08-25 15:31:23 +10:00
framebuf_polygon.py tests/extmod/framebuf_polygon.py: Replace sys.stdout.write with print. 2024-01-29 13:07:25 +11:00
framebuf_polygon.py.exp extmod/modframebuf: Improve poly-fill boundary pixels. 2022-08-19 23:31:28 +10:00
framebuf_scroll.py tests/extmod/framebuf_scroll: Add tests for FrameBuffer scrolling. 2022-12-09 16:47:08 +11:00
framebuf_scroll.py.exp tests/extmod/framebuf_scroll: Add tests for FrameBuffer scrolling. 2022-12-09 16:47:08 +11:00
framebuf_subclass.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
framebuf_subclass.py.exp extmod/modframebuf: Allow blit source to be a subclass of FrameBuffer. 2020-02-21 13:32:48 +11:00
hashlib_final.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
hashlib_final.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
hashlib_md5.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
hashlib_sha1.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
hashlib_sha256.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
heapq1.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_dump.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_dump_iobase.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_dump_separators.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_dumps.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_dumps_extra.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_dumps_extra.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_dumps_float.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_dumps_ordereddict.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_dumps_separators.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_load.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_loads.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_loads_bytes.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_loads_bytes.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
json_loads_float.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
machine1.py tests/extmod: Convert machine1.py test to use unittest. 2024-12-06 13:48:23 +11:00
machine_disable_irq.py esp32: Fix hang in taskYIELD() on riscv CPUs when IRQs disabled. 2024-10-10 10:59:51 +11:00
machine_disable_irq.py.exp esp32: Fix hang in taskYIELD() on riscv CPUs when IRQs disabled. 2024-10-10 10:59:51 +11:00
machine_i2s_rate.py tests/extmod: Add esp32 support to the machine_i2s_rate test. 2024-08-02 10:31:19 +10:00
machine_i2s_rate.py.exp tests/extmod: Add test for machine.I2S data rate. 2022-03-29 11:44:08 +11:00
machine_pinbase.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
machine_pinbase.py.exp tests: Add a testcase for machine.PinBase class. 2016-06-19 19:45:29 +03:00
machine_pulse.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
machine_pulse.py.exp extmod/machine_pulse: Make time_pulse_us() not throw exceptions. 2017-02-05 14:20:17 +03:00
machine_rtc.py tests/extmod: Fix access of RTC class in machine.RTC test. 2024-10-24 16:29:43 +11:00
machine_rtc.py.exp tests/extmod: Add a simple test for machine.RTC. 2024-10-24 11:43:03 +11:00
machine_signal.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
machine_signal.py.exp tests/extmod: Add test for machine.Signal class. 2017-03-02 16:09:16 +11:00
machine_soft_timer.py tests/extmod: Config SPI test for esp8266 and skip SoftTimer test. 2024-10-22 14:31:13 +11:00
machine_soft_timer.py.exp tests/extmod: Rename machine_timer exp file to machine_soft_timer. 2024-08-07 15:02:52 +10:00
machine_spi_rate.py tests/extmod: Config SPI test for esp8266 and skip SoftTimer test. 2024-10-22 14:31:13 +11:00
machine_spi_rate.py.exp tests/extmod: Add machine_spi_rate test. 2024-08-07 15:07:13 +10:00
machine_uart_irq_txidle.py tests/extmod/machine_uart_irq_txidle.py: Simplify the test script. 2024-09-06 17:43:49 +10:00
machine_uart_irq_txidle.py.exp tests/extmod: Add test for machine.UART.IRQ_TXIDLE. 2024-08-29 16:48:09 +10:00
machine_uart_tx.py tests/extmod: Support esp32,mimxrt,stm32,samd ports in UART TX test. 2024-10-22 22:21:17 +11:00
machine_uart_tx.py.exp tests/extmod/machine_uart_tx.py: Add a test for timing of UART.flush(). 2024-01-16 09:07:03 +11:00
marshal_basic.py extmod/modmarshal: Add new marshal module. 2025-02-11 16:54:20 +11:00
marshal_micropython.py extmod/modmarshal: Add new marshal module. 2025-02-11 16:54:20 +11:00
marshal_stress.py extmod/modmarshal: Add new marshal module. 2025-02-11 16:54:20 +11:00
random_basic.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
random_basic.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
random_extra.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
random_extra_float.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
random_seed_default.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re1.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_debug.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_debug.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_error.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_group.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_groups.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_limit.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_limit.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_namedclass.py tests/extmod: Fix regex strings to be of r"" type. 2024-05-27 13:56:55 +10:00
re_span.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_split.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_split_empty.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_split_empty.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_split_notimpl.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_split_notimpl.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_stack_overflow.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_stack_overflow.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_sub.py tests/extmod/re_sub.py: Fix test execution on Python 3.13. 2025-01-15 07:46:09 +11:00
re_sub_unmatched.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
re_sub_unmatched.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
select_ipoll.py tests/extmod: Add coverage tests for select module. 2023-08-07 12:37:48 +10:00
select_ipoll.py.exp tests/extmod: Add coverage tests for select module. 2023-08-07 12:37:48 +10:00
select_poll_basic.py tests/extmod: Add coverage tests for select module. 2023-08-07 12:37:48 +10:00
select_poll_custom.py extmod/modselect: Properly track number of poll objects that are fd's. 2023-08-14 18:48:47 +10:00
select_poll_custom.py.exp extmod/modselect: Properly track number of poll objects that are fd's. 2023-08-14 18:48:47 +10:00
select_poll_eintr.py tests/extmod/select_poll_eintr.py: Improve robustness of test. 2023-08-15 00:08:51 +10:00
select_poll_fd.py tools/ci.sh: Set ulimit -n for unix CI. 2023-12-21 11:05:31 +11:00
select_poll_udp.py tests/extmod: Skip select/socket tests if they can't create UDP socket. 2023-08-07 12:39:29 +10:00
socket_tcp_basic.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
socket_udp_nonblock.py tests/extmod: Skip select/socket tests if they can't create UDP socket. 2023-08-07 12:39:29 +10:00
ssl_basic.py extmod/modssl: Add SSLContext class. 2023-06-26 16:34:41 +10:00
ssl_basic.py.exp extmod/modssl: Add SSLContext class. 2023-06-26 16:34:41 +10:00
ssl_cadata.py tests/extmod: Adjust ssl/tls tests to run on targets with axTLS. 2024-10-22 14:31:13 +11:00
ssl_cadata.py.exp tests/extmod: Add test for passing cadata into ssl.wrap_socket(). 2023-06-26 16:34:41 +10:00
ssl_ioctl.py extmod/modssl_mbedtls: Reject ioctls that are not supported. 2023-08-09 13:22:32 +10:00
ssl_ioctl.py.exp extmod/modssl_mbedtls: Fix ioctl of a socket in closed/error state. 2023-08-09 13:22:57 +10:00
ssl_keycert.py tests/extmod: Adjust ssl/tls tests to run on targets with axTLS. 2024-10-22 14:31:13 +11:00
ssl_keycert.py.exp tests/extmod: Adjust ssl/tls tests to run on targets with axTLS. 2024-10-22 14:31:13 +11:00
ssl_keycert_pkcs8.py tests/extmod: Adjust ssl/tls tests to run on targets with axTLS. 2024-10-22 14:31:13 +11:00
ssl_keycert_pkcs8.py.exp tests/extmod: Adjust ssl/tls tests to run on targets with axTLS. 2024-10-22 14:31:13 +11:00
ssl_noleak.py tests: Add a test for SSL socket memory leaks. 2025-02-03 15:02:02 +11:00
ssl_poll.py extmod/mbedtls: Enable GCM and ECDHE-RSA in common mbedtls config. 2024-07-02 13:19:17 +10:00
ssl_poll.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
ssl_sslcontext.py tests/extmod: Add tests for ssl.SSLContext. 2023-06-26 16:34:41 +10:00
ssl_sslcontext_verify_mode.py tests/extmod: Adjust ssl/tls tests to run on targets with axTLS. 2024-10-22 14:31:13 +11:00
ssl_sslcontext_verify_mode2.py tests/extmod: Adjust ssl/tls tests to run on targets with axTLS. 2024-10-22 14:31:13 +11:00
ticks_add.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
ticks_add.py.exp extmod/utime_mphal: Make ticks_add check for overflow of delta. 2022-10-14 15:54:53 +11:00
ticks_diff.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
ticks_diff.py.exp tests/extmod/ticks_diff: Test for new semantics of ticks_diff(). 2016-10-30 21:33:12 +03:00
time_ms_us.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
time_ms_us.py.exp tests/extmod/time_ms_us: Add test for calling ticks_cpu(). 2018-03-04 00:17:33 +11:00
time_res.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
time_res.py.exp tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
time_time_ns.py tests/extmod: Add test to compare time_ns with time. 2024-10-24 23:24:09 +11:00
time_time_ns.py.exp tests/extmod: Add test to compare time_ns with time. 2024-10-24 23:24:09 +11:00
tls_dtls.py extmod/modtls_mbedtls: Wire in support for DTLS. 2025-02-14 12:55:25 +11:00
tls_dtls.py.exp extmod/modtls_mbedtls: Wire in support for DTLS. 2025-02-14 12:55:25 +11:00
tls_sslcontext_ciphers.py tests/extmod: Adjust ssl/tls tests to run on targets with axTLS. 2024-10-22 14:31:13 +11:00
tls_sslcontext_ciphers.py.exp extmod/modtls: Move the native ssl module to tls. 2024-02-07 12:58:52 +11:00
tls_sslcontext_micropython.py extmod/modtls: Move the native ssl module to tls. 2024-02-07 12:58:52 +11:00
tls_sslcontext_micropython.py.exp extmod/modtls: Move the native ssl module to tls. 2024-02-07 12:58:52 +11:00
uctypes_32bit_intbig.py tests/extmod: Use bytearray instead of bytes for uctypes test. 2022-05-18 15:23:11 +10:00
uctypes_32bit_intbig.py.exp tests/extmod: Use bytearray instead of bytes for uctypes test. 2022-05-18 15:23:11 +10:00
uctypes_addressof.py tests/extmod: Add test for uctypes.addressof function. 2024-12-18 11:01:23 +11:00
uctypes_addressof.py.exp tests/extmod: Add test for uctypes.addressof function. 2024-12-18 11:01:23 +11:00
uctypes_array_assign_le.py tests/extmod/uctypes_array_assign_le: Fix buffer. 2023-06-21 09:48:37 +01:00
uctypes_array_assign_le.py.exp tests/uctypes: Test item assignment for scalar arrays. 2016-01-03 20:32:51 +02:00
uctypes_array_assign_native_le.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
uctypes_array_assign_native_le.py.exp tests/uctypes_array_assign_native_le: Split off intbig part. 2017-03-07 08:40:03 +01:00
uctypes_array_assign_native_le_intbig.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
uctypes_array_assign_native_le_intbig.py.exp tests/uctypes_array_assign_native_le: Split off intbig part. 2017-03-07 08:40:03 +01:00
uctypes_array_load_store.py py/binary: Fix sign extension setting wide integer on 32-bit archs. 2020-11-11 22:18:24 +11:00
uctypes_array_load_store.py.exp py/binary: Fix sign extension setting wide integer on 32-bit archs. 2020-11-11 22:18:24 +11:00
uctypes_bytearray.py tests/extmod: Add some uctypes tests to improve coverage of that module. 2017-12-19 16:48:41 +11:00
uctypes_bytearray.py.exp tests/extmod: Add some uctypes tests to improve coverage of that module. 2017-12-19 16:48:41 +11:00
uctypes_byteat.py tests: Format all Python code with black, except tests in basics subdir. 2020-03-30 13:21:58 +11:00
uctypes_byteat.py.exp tests/extmod: Add some uctypes tests to improve coverage of that module. 2017-12-19 16:48:41 +11:00
uctypes_error.py extmod/moductypes: Validate that uctypes.struct addr argument is an int. 2023-10-12 15:47:15 +11:00
uctypes_error.py.exp extmod/moductypes: Validate that uctypes.struct addr argument is an int. 2023-10-12 15:47:15 +11:00
uctypes_le.py all: Update Python code to conform to latest black formatting. 2020-08-29 15:18:01 +10:00
uctypes_le.py.exp tests/extmod: Improve moductypes test coverage. 2016-12-12 17:09:14 +11:00
uctypes_le_float.py extmod/moductypes: Fix size and offset calculation for ARRAY of FLOAT32. 2021-05-06 13:11:33 +10:00
uctypes_le_float.py.exp extmod/moductypes: Fix size and offset calculation for ARRAY of FLOAT32. 2021-05-06 13:11:33 +10:00
uctypes_native_float.py tests: Format all Python code with black, except tests in basics subdir. 2020-03-30 13:21:58 +11:00
uctypes_native_float.py.exp extmod/uctypes: Finish support for FLOAT32 and FLOAT64 types. 2016-03-19 21:59:42 +00:00
uctypes_native_le.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
uctypes_native_le.py.exp tests/extmod: Improve moductypes test coverage. 2016-12-12 17:09:14 +11:00
uctypes_print.py tests: Format all Python code with black, except tests in basics subdir. 2020-03-30 13:21:58 +11:00
uctypes_print.py.exp tests/extmod: Improve moductypes test coverage. 2016-12-12 17:09:14 +11:00
uctypes_ptr_le.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
uctypes_ptr_le.py.exp tests/extmod/uctypes_ptr_le: Test int() operation on a pointer field. 2018-12-10 14:25:06 +11:00
uctypes_ptr_native_le.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
uctypes_ptr_native_le.py.exp moductypes: Foreign data interface module, roughly based on ctype ideas. 2014-07-09 19:28:24 +03:00
uctypes_sizeof.py extmod/moductypes: Validate the descriptor tuple. 2024-07-22 14:40:45 +10:00
uctypes_sizeof.py.exp extmod/moductypes: Validate the descriptor tuple. 2024-07-22 14:40:45 +10:00
uctypes_sizeof_float.py extmod/moductypes: Fix size and offset calculation for ARRAY of FLOAT32. 2021-05-06 13:11:33 +10:00
uctypes_sizeof_float.py.exp extmod/moductypes: Fix size and offset calculation for ARRAY of FLOAT32. 2021-05-06 13:11:33 +10:00
uctypes_sizeof_layout.py all: Fix spelling mistakes based on codespell check. 2023-04-27 18:03:06 +10:00
uctypes_sizeof_layout.py.exp tests/extmod/uctypes_sizeof_layout: Test for sizeof of different layout. 2018-10-23 11:33:35 +11:00
uctypes_sizeof_native.py all: Update Python code to conform to latest black formatting. 2020-08-29 15:18:01 +10:00
uctypes_sizeof_native.py.exp moductypes: Foreign data interface module, roughly based on ctype ideas. 2014-07-09 19:28:24 +03:00
uctypes_sizeof_od.py extmod/moductypes: Validate the descriptor tuple. 2024-07-22 14:40:45 +10:00
uctypes_sizeof_od.py.exp extmod/moductypes: Validate the descriptor tuple. 2024-07-22 14:40:45 +10:00
vfs_basic.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_basic.py.exp extmod/vfs: Fix lookup of entry in root dir so it fails correctly. 2020-09-23 16:23:35 +10:00
vfs_blockdev.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_blockdev.py.exp tests/extmod: Add test for blockdev with standard and extended protocol. 2019-10-29 14:17:29 +11:00
vfs_blockdev_invalid.py tests/extmod: Make invalid-blockdev test work consistently on all ports. 2024-10-22 14:32:51 +11:00
vfs_blockdev_invalid.py.exp tests/extmod: Make invalid-blockdev test work consistently on all ports. 2024-10-22 14:32:51 +11:00
vfs_fat_fileio1.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_fat_fileio1.py.exp tests/extmod: Split out VfsFat finaliser tests to separate test file. 2019-12-27 12:30:51 +11:00
vfs_fat_fileio2.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_fat_fileio2.py.exp extmod/vfs_fat: Add file size as 4th element of uos.ilistdir tuple. 2018-03-12 12:26:36 +11:00
vfs_fat_finaliser.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_fat_finaliser.py.exp tests/extmod: Split out VfsFat finaliser tests to separate test file. 2019-12-27 12:30:51 +11:00
vfs_fat_ilistdir_del.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_fat_ilistdir_del.py.exp extmod/vfs: Add finaliser to ilistdir to close directory handle. 2022-09-13 13:00:42 +10:00
vfs_fat_more.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_fat_more.py.exp tests/extmod: Add test for importing a script from a user VFS. 2018-06-06 14:28:23 +10:00
vfs_fat_mtime.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_fat_mtime.py.exp tests/extmod: Add tests for verifying FAT and littlefs mtime values. 2020-09-02 00:19:38 +10:00
vfs_fat_oldproto.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_fat_oldproto.py.exp extmod/vfs_fat: Add file size as 4th element of uos.ilistdir tuple. 2018-03-12 12:26:36 +11:00
vfs_fat_ramdisk.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_fat_ramdisk.py.exp tests/extmod: Add tests for verifying FAT and littlefs mtime values. 2020-09-02 00:19:38 +10:00
vfs_fat_ramdisklarge.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_fat_ramdisklarge.py.exp tests/extmod: Add test for FAT filesystem on a very large block device. 2019-03-27 10:22:38 +11:00
vfs_lfs.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_lfs.py.exp extmod/vfs_lfs: Add mtime support to littlefs files. 2020-08-25 17:35:19 +10:00
vfs_lfs_corrupt.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_lfs_corrupt.py.exp tests/extmod: Add littlefs tests. 2019-10-29 14:17:29 +11:00
vfs_lfs_error.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_lfs_error.py.exp tests/extmod: Add littlefs tests. 2019-10-29 14:17:29 +11:00
vfs_lfs_file.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_lfs_file.py.exp tests/extmod: Add littlefs tests. 2019-10-29 14:17:29 +11:00
vfs_lfs_ilistdir_del.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_lfs_ilistdir_del.py.exp extmod/vfs: Add finaliser to ilistdir to close directory handle. 2022-09-13 13:00:42 +10:00
vfs_lfs_mount.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_lfs_mount.py.exp tests/extmod: Change expected errno code from 36 to 30 in VfsLfs2 test. 2022-05-24 12:52:00 +10:00
vfs_lfs_mtime.py tests/extmod: Use time_ns instead of time in lfs mtime test. 2024-10-24 23:24:09 +11:00
vfs_lfs_mtime.py.exp tests/extmod: Add tests for verifying FAT and littlefs mtime values. 2020-09-02 00:19:38 +10:00
vfs_lfs_superblock.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_lfs_superblock.py.exp extmod/vfs: Check block 0 and 1 when auto-detecting littlefs. 2021-01-29 15:02:55 +11:00
vfs_posix.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_posix.py.exp extmod/vfs_posix: Fix relative root path. 2023-10-19 16:21:08 +02:00
vfs_posix_enoent.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_posix_enoent.py.exp extmod/vfs_posix: Additional tests for coverage of error cases. 2023-10-19 16:21:09 +02:00
vfs_posix_ilistdir_del.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_posix_ilistdir_del.py.exp extmod/vfs: Add finaliser to ilistdir to close directory handle. 2022-09-13 13:00:42 +10:00
vfs_posix_ilistdir_filter.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_posix_ilistdir_filter.py.exp extmod/vfs_posix: Do not filter '..*' in ilistdir when filtering '..'. 2023-03-21 16:13:10 +11:00
vfs_posix_paths.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_posix_paths.py.exp extmod/vfs_posix: Fix getcwd() on non-root VFS. 2023-10-19 16:21:09 +02:00
vfs_rom.py extmod/vfs_rom: Add bounds checking for all filesystem accesses. 2025-02-26 16:11:19 +11:00
vfs_userfs.py tests: Use vfs module instead of os. 2024-02-07 13:25:09 +11:00
vfs_userfs.py.exp extmod/vfs_reader: Add file ioctl to set read buffer size. 2023-11-09 11:20:31 +11:00
websocket_basic.py tests: Replace umodule with module everywhere. 2023-06-08 17:54:24 +10:00
websocket_basic.py.exp extmod/modwebsocket: Fix websocket to send correct close frame. 2024-02-26 12:20:40 +11:00