diff --git a/tests/components/thermostat/common.yaml b/tests/components/thermostat/common.yaml index 63bd174e144..756027f4a6e 100644 --- a/tests/components/thermostat/common.yaml +++ b/tests/components/thermostat/common.yaml @@ -5,6 +5,7 @@ sensor: climate: - platform: thermostat + id: test_thermostat name: Test Thermostat sensor: thermostat_sensor humidity_sensor: thermostat_sensor @@ -15,6 +16,25 @@ climate: - name: Away default_target_temperature_low: 16°C default_target_temperature_high: 20°C + custom_preset: + - name: Eco Mode + default_target_temperature_low: 16°C + default_target_temperature_high: 22°C + - name: Sleep Mode + default_target_temperature_low: 17°C + default_target_temperature_high: 21°C + on_state: + - lambda: |- + // Test get_custom_preset() returns std::string_view + if (id(test_thermostat).has_custom_preset()) { + auto preset = id(test_thermostat).get_custom_preset(); + // Compare with string literal using == + if (preset == "Eco Mode") { + ESP_LOGD("test", "Preset is Eco Mode"); + } + // Log using %.*s format for string_view + ESP_LOGD("test", "Custom preset: %.*s", (int) preset.size(), preset.data()); + } idle_action: - logger.log: idle_action cool_action: