Merge branch 'fix/custom-bootloader-multiboot-pytest' into 'master'

ci(bootloader): fixed multiboot example flakey test-case

Closes IDFCI-9734 and IDFCI-9736

See merge request espressif/esp-idf!48229
This commit is contained in:
Marius Vikhammer
2026-05-07 16:25:30 +08:00
2 changed files with 7 additions and 5 deletions

View File

@@ -28,7 +28,7 @@ This custom bootloader will clear the monitor and show all the bootable partitio
Please select a partition to boot.
FOUND 3 BOOT PARTITIONS:
default
main
hello_world
console
```
@@ -66,4 +66,3 @@ Below is a short explanation of the files in the project folder.
As stated in the `README.md` file in the upper level, when the bootloader components are named `main`, it overrides the whole second stage bootloader code.
Please note that this example also relies on the `hello_world` and `console` examples, before building, make sure these two examples have a clean environment and a valid `sdkconfig`.

View File

@@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: 2024-2025 Espressif Systems (Shanghai) CO LTD
# SPDX-FileCopyrightText: 2024-2026 Espressif Systems (Shanghai) CO LTD
# SPDX-License-Identifier: CC0-1.0
import pytest
from pytest_embedded import Dut
@@ -9,8 +9,11 @@ from pytest_embedded_idf.utils import idf_parametrize
@pytest.mark.generic
@idf_parametrize('target', ['esp32c3', 'esp32s3'], indirect=['target'])
def test_custom_bootloader_multiboot_example(app: IdfApp, dut: Dut) -> None:
# Expect to see all three partitions in the list
dut.expect_exact('default')
# Wait for the bootloader menu before matching entry names so flashing logs do not
# satisfy the expectations prematurely.
dut.expect_exact('Please select a partition to boot.')
dut.expect_exact('FOUND 3 BOOT PARTITIONS:')
dut.expect_exact('main')
dut.expect_exact('hello_world')
dut.expect_exact('console')
# Send "down arrow" signal to select the second image, which should be `hello_world`