mirror of
				https://github.com/esphome/esphome.git
				synced 2025-10-30 22:53:59 +00:00 
			
		
		
		
	Fix optional returns from templates
This commit is contained in:
		| @@ -3,7 +3,7 @@ import voluptuous as vol | ||||
| import esphomeyaml.config_validation as cv | ||||
| from esphomeyaml.components import binary_sensor | ||||
| from esphomeyaml.const import CONF_LAMBDA, CONF_MAKE_ID, CONF_NAME | ||||
| from esphomeyaml.helpers import App, Application, process_lambda, variable | ||||
| from esphomeyaml.helpers import App, Application, process_lambda, variable, optional, bool_ | ||||
|  | ||||
| MakeTemplateBinarySensor = Application.MakeTemplateBinarySensor | ||||
|  | ||||
| @@ -15,7 +15,8 @@ PLATFORM_SCHEMA = binary_sensor.PLATFORM_SCHEMA.extend({ | ||||
|  | ||||
| def to_code(config): | ||||
|     template_ = None | ||||
|     for template_ in process_lambda(config[CONF_LAMBDA], []): | ||||
|     for template_ in process_lambda(config[CONF_LAMBDA], [], | ||||
|                                     return_type=optional.template(bool_)): | ||||
|         yield | ||||
|     rhs = App.make_template_binary_sensor(config[CONF_NAME], template_) | ||||
|     make = variable(config[CONF_MAKE_ID], rhs) | ||||
|   | ||||
| @@ -5,7 +5,7 @@ from esphomeyaml import automation | ||||
| from esphomeyaml.components import cover | ||||
| from esphomeyaml.const import CONF_CLOSE_ACTION, CONF_LAMBDA, CONF_MAKE_ID, CONF_NAME, \ | ||||
|     CONF_OPEN_ACTION, CONF_STOP_ACTION, CONF_OPTIMISTIC | ||||
| from esphomeyaml.helpers import App, Application, NoArg, add, process_lambda, variable | ||||
| from esphomeyaml.helpers import App, Application, NoArg, add, process_lambda, variable, optional | ||||
|  | ||||
| MakeTemplateCover = Application.MakeTemplateCover | ||||
|  | ||||
| @@ -25,7 +25,8 @@ def to_code(config): | ||||
|  | ||||
|     if CONF_LAMBDA in config: | ||||
|         template_ = None | ||||
|         for template_ in process_lambda(config[CONF_LAMBDA], []): | ||||
|         for template_ in process_lambda(config[CONF_LAMBDA], [], | ||||
|                                         return_type=optional.template(cover.CoverState)): | ||||
|             yield | ||||
|         add(make.Ptemplate_.set_state_lambda(template_)) | ||||
|     if CONF_OPEN_ACTION in config: | ||||
|   | ||||
| @@ -15,7 +15,7 @@ def validate_frequency_bit_depth(obj): | ||||
|     bit_depth = obj.get(CONF_BIT_DEPTH, 12) | ||||
|     max_freq = APB_CLOCK_FREQ / (2**bit_depth) | ||||
|     if frequency > max_freq: | ||||
|         raise vol.Invalid('Maximum frequency for bit depth {} is {}'.format(bit_depth, max_freq)) | ||||
|         raise vol.Invalid('Maximum frequency for bit depth {} is {}Hz'.format(bit_depth, max_freq)) | ||||
|     return obj | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -3,7 +3,7 @@ import voluptuous as vol | ||||
| import esphomeyaml.config_validation as cv | ||||
| from esphomeyaml.components import sensor | ||||
| from esphomeyaml.const import CONF_LAMBDA, CONF_MAKE_ID, CONF_NAME, CONF_UPDATE_INTERVAL | ||||
| from esphomeyaml.helpers import App, process_lambda, variable, Application | ||||
| from esphomeyaml.helpers import App, process_lambda, variable, Application, float_, optional | ||||
|  | ||||
| MakeTemplateSensor = Application.MakeTemplateSensor | ||||
|  | ||||
| @@ -16,7 +16,8 @@ PLATFORM_SCHEMA = sensor.PLATFORM_SCHEMA.extend({ | ||||
|  | ||||
| def to_code(config): | ||||
|     template_ = None | ||||
|     for template_ in process_lambda(config[CONF_LAMBDA], []): | ||||
|     for template_ in process_lambda(config[CONF_LAMBDA], [], | ||||
|                                     return_type=optional.template(float_)): | ||||
|         yield | ||||
|     rhs = App.make_template_sensor(config[CONF_NAME], template_, | ||||
|                                    config.get(CONF_UPDATE_INTERVAL)) | ||||
|   | ||||
| @@ -5,7 +5,8 @@ from esphomeyaml import automation | ||||
| from esphomeyaml.components import switch | ||||
| from esphomeyaml.const import CONF_LAMBDA, CONF_MAKE_ID, CONF_NAME, CONF_TURN_OFF_ACTION, \ | ||||
|     CONF_TURN_ON_ACTION, CONF_OPTIMISTIC | ||||
| from esphomeyaml.helpers import App, Application, process_lambda, variable, NoArg, add | ||||
| from esphomeyaml.helpers import App, Application, process_lambda, variable, NoArg, add, bool_, \ | ||||
|     optional | ||||
|  | ||||
| MakeTemplateSwitch = Application.MakeTemplateSwitch | ||||
|  | ||||
| @@ -24,7 +25,8 @@ def to_code(config): | ||||
|  | ||||
|     if CONF_LAMBDA in config: | ||||
|         template_ = None | ||||
|         for template_ in process_lambda(config[CONF_LAMBDA], []): | ||||
|         for template_ in process_lambda(config[CONF_LAMBDA], [], | ||||
|                                         return_type=optional.template(bool_)): | ||||
|             yield | ||||
|         add(make.Ptemplate_.set_state_lambda(template_)) | ||||
|     if CONF_TURN_OFF_ACTION in config: | ||||
|   | ||||
		Reference in New Issue
	
	Block a user