Skip to content

Conversation

@hmaerki
Copy link

@hmaerki hmaerki commented Oct 20, 2025

Summary

See my comments in octoprobe/testbed_micropython#57

Some boards define ESP32C3, some define ESP32-C3.

Probably it should just use default pins, eg SPI(1).

Signed-off-by: Damien George <[email protected]>
Eg for ESP8266-512K.

Signed-off-by: Damien George <[email protected]>
In --via-mpy --emit native mode.

Signed-off-by: Damien George <[email protected]>
On ESP8266 this test can fail with --via-mpy.

Signed-off-by: Damien George <[email protected]>
Because RP2350 uses float-abi=softfp!  Maybe we should change that somehow?

Could also use `defined(__SOFTFP__)` to detect soft (all software fp) or
softfp (hardware for calculations but soft/integer for passing arguments).

Signed-off-by: Damien George <[email protected]>
Tested on ADAFRUIT_ITSYBITSY_M0_EXPRESS.

Signed-off-by: Damien George <[email protected]>
On bare-metal lwIP targets, there's only enough buffer space for 4 groups.

Signed-off-by: Damien George <[email protected]>
The test runner will abort with error code 2 if:
- the target could not be detected (enter_raw_repl failed at the
  detection stage)
- unittest is not installed but is needed

Signed-off-by: Damien George <[email protected]>
Now, if a test fails and crashes a board to the point it no longer responds
(but the serial connection is still alive and able to read/write), it only
takes a maximum of 30 + 5 * 4 = 50 seconds to detect that state and exit
the test run (previously it would be 30 + 10 seconds * number of remaining
tests = potentially large).

Can test this by adding the following to a test:

    import time, micropython
    micropython.kbd_intr(-1)
    while 1:
        time.sleep(1)

Signed-off-by: Damien George <[email protected]>
Because it needs internet connection it must be in a test directory that is
expected to have internet connection.

Also, this test can be made to run on more targets in the future.

Signed-off-by: Damien George <[email protected]>
Otherwise the test will fail with --via-mpy because the mounted __FS object
will allow any file to be opened.

Signed-off-by: Damien George <[email protected]>
To reduce heap memory use.

Signed-off-by: Damien George <[email protected]>
This moves the `port:<dev>` check for the test instance to the
`convert_device_shortcut_to_real_device()` helper function, which means
that `run-multitests.py` can use this specification.

Signed-off-by: Damien George <[email protected]>
If `time.time` doesn't exist, it tries to use `globals()['time']` which is
the time module itself, and that causes the test to fail.  Instead it
should just skip `time.time`.

Signed-off-by: Damien George <[email protected]>
@dpgeorge dpgeorge force-pushed the tests-improvements-for-octoprobe branch 2 times, most recently from 39ba8fe to e143b45 Compare November 19, 2025 02:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants