mirror of
https://github.com/esphome/esphome.git
synced 2026-08-25 15:46:20 +00:00
- set_idle_() is the single door back to IDLE (bootstrap, open-fail and the DISCOVERED park went through bare set_state), so the per-attempt reset list holds only per-attempt latches - CFG_MTU joins OPEN_EVT and SEARCH_CMPL in suppressing reports while a teardown owns the link - one spelling of the guard across all three events, and the wrapper's race arm becomes defense instead of the only cover - The connections-free retry drain compiles on every proxy build (the advertisement-only arm sends the message too; the latch already did) - latch_pending_error_ makes first-cause-wins the mechanism at all three latch sites; the dead freed-slot refused branch and its retired vocabulary go; the initiate_connection/start_connect_ pair collapses - UNSET_CONN_ID hoisted next to the field it initializes; count-status shadow renamed; stale busy-error rationale replaced with the real one (a repeat call would re-arm the teardown timer) - Fixture states the batch-grouping caveat like its rp2 sibling; the get_service_table stub carries a greppable direct-consumer warning
Tests for ESPHome
This directory contains some tests for ESPHome.
At the moment, all the tests only work by simply executing
esphome over some YAML files that are made to test
whether the yaml gets converted to the proper C++ code.
Of course this is all just very high-level and things like unit tests would be much better. So if you have time and know how to set up a unit testing framework for python, please do give it a try.
When adding entries in test_.yaml files we usually need only
one file updated, unless conflicting code is generated for
different configurations, e.g. wifi and ethernet cannot
be tested on the same device.
Current test_.yaml file contents.
| Test name | Platform | Network | BLE |
|---|---|---|---|
| test1.yaml | ESP32 | wifi | None |
| test2.yaml | ESP32 | ethernet | esp32_ble_tracker |
| test3.yaml | ESP8266 | wifi | N/A |
| test4.yaml | ESP32 | ethernet | None |
| test5.yaml | ESP32 | wifi | ble_server |
| test6.yaml | RP2040 | wifi | N/A |
| test7.yaml | ESP32-C3 | wifi | N/A |
| test8.yaml | ESP32-S3 | wifi | None |
| test10.yaml | ESP32 | wifi | None |