From 42e9448a500e7adfec22840ec979c7fb55a11a26 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Thu, 20 Aug 2026 06:48:24 -0500 Subject: [PATCH] Cover the YAML toolchain key resolution --- .../esp8266/test_toolchain_validation.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/tests/unit_tests/components/esp8266/test_toolchain_validation.py b/tests/unit_tests/components/esp8266/test_toolchain_validation.py index 093e82288f..0a82822de4 100644 --- a/tests/unit_tests/components/esp8266/test_toolchain_validation.py +++ b/tests/unit_tests/components/esp8266/test_toolchain_validation.py @@ -95,3 +95,22 @@ def test_custom_source_rejected() -> None: def test_unsupported_board_rejected() -> None: with pytest.raises(cv.Invalid, match="not supported by"): _validate_native_toolchain(_config(board="not_a_board")) + + +def test_yaml_toolchain_key_resolves() -> None: + """The documented `toolchain: arduino` YAML key selects the native path.""" + from esphome.components.esp8266 import _resolve_toolchain + from esphome.const import CONF_TOOLCHAIN + + CORE.toolchain = None + _resolve_toolchain({CONF_TOOLCHAIN: Toolchain.ARDUINO}) + assert CORE.toolchain == Toolchain.ARDUINO + assert CORE.using_toolchain_arduino + + +def test_yaml_toolchain_key_defaults_to_platformio() -> None: + CORE.toolchain = None + from esphome.components.esp8266 import _resolve_toolchain + + _resolve_toolchain({}) + assert CORE.toolchain == Toolchain.PLATFORMIO