esphome/tests
Jim Ekman 7708b81ef5
Support fan speed levels (#1541)
* Add fan speed percentage support to the API

* Add float fan speed percentage

* Add percentage support to automation and configuration

* Update Tuya fan

* Fix pylint warning

* Update API to use speed levels instead of percentage

* Use speed levels

* Fix type warnings

* MQTT component now converts between speed levels and enums

* Webserver now supports speed_level

* Update prometheus

* Remove low/medium/high settings from speed fan

* Remove unused enum

* Configurable speed levels for speed fan

* Remove unused import

* Rename speed_level->speed and speed_levels->speed_count

* Rename supported_speed_levels -> supported_speed_count in API and FanTraits

Field id stays the same in the protocol, so the change is not breaking for aioesphome.
2021-03-17 10:40:02 -03:00
..
component_tests Fixed component_tests config (#1608) 2021-03-12 19:58:43 -03:00
test_packages Packages feature (#1052) 2020-07-13 11:45:06 -03:00
unit_tests add-black (#1593) 2021-03-07 16:03:16 -03:00
.gitignore Rename esphomeyaml to esphome (#426) 2019-02-13 16:54:02 +01:00
custom.h Create Protobuf Plugin for automatically generating native API stubs (#633) 2019-06-18 19:31:22 +02:00
livingroom32.cpp Lint 2019-05-24 23:08:04 +02:00
livingroom8266.cpp Lint 2019-05-24 23:08:04 +02:00
README.md update test readme 2020-07-12 14:36:07 -03:00
test1.yaml Support fan speed levels (#1541) 2021-03-17 10:40:02 -03:00
test2.yaml Add duration option to action start deep sleep (#1526) 2021-02-15 14:32:22 -03:00
test3.yaml Improve error checking: too many component id candidates (#1570) 2021-03-07 19:59:32 -03:00
test4.yaml Allow Tuya climate temperature_multiplier to be current/target multiplier (#1345) 2020-11-12 06:31:35 +13:00

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
test1.yaml ESP32 wifi
test2.yaml ESP32 ethernet
test3.yaml ESP8266 wifi
test4.yaml ESP32 ethernet