Skip to content

Commit

Permalink
Fix KeyError in derivative and integration (home-assistant#102294)
Browse files Browse the repository at this point in the history
  • Loading branch information
edenhaus authored Oct 19, 2023
1 parent 3a4341d commit eab4c24
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 4 deletions.
6 changes: 5 additions & 1 deletion homeassistant/components/derivative/sensor.py
Original file line number Diff line number Diff line change
Expand Up @@ -116,14 +116,18 @@ async def async_setup_entry(
else:
device_info = None

if (unit_prefix := config_entry.options.get(CONF_UNIT_PREFIX)) == "none":
# Before we had support for optional selectors, "none" was used for selecting nothing
unit_prefix = None

derivative_sensor = DerivativeSensor(
name=config_entry.title,
round_digits=int(config_entry.options[CONF_ROUND_DIGITS]),
source_entity=source_entity_id,
time_window=cv.time_period_dict(config_entry.options[CONF_TIME_WINDOW]),
unique_id=config_entry.entry_id,
unit_of_measurement=None,
unit_prefix=config_entry.options.get(CONF_UNIT_PREFIX),
unit_prefix=unit_prefix,
unit_time=config_entry.options[CONF_UNIT_TIME],
device_info=device_info,
)
Expand Down
6 changes: 5 additions & 1 deletion homeassistant/components/integration/sensor.py
Original file line number Diff line number Diff line change
Expand Up @@ -169,13 +169,17 @@ async def async_setup_entry(
else:
device_info = None

if (unit_prefix := config_entry.options.get(CONF_UNIT_PREFIX)) == "none":
# Before we had support for optional selectors, "none" was used for selecting nothing
unit_prefix = None

integral = IntegrationSensor(
integration_method=config_entry.options[CONF_METHOD],
name=config_entry.title,
round_digits=int(config_entry.options[CONF_ROUND_DIGITS]),
source_entity=source_entity_id,
unique_id=config_entry.entry_id,
unit_prefix=config_entry.options.get(CONF_UNIT_PREFIX),
unit_prefix=unit_prefix,
unit_time=config_entry.options[CONF_UNIT_TIME],
device_info=device_info,
)
Expand Down
3 changes: 1 addition & 2 deletions homeassistant/components/template/config_flow.py
Original file line number Diff line number Diff line change
Expand Up @@ -176,8 +176,7 @@ def validate_user_input(
]:
"""Do post validation of user input.
For binary sensors: Strip none-sentinels.
For sensors: Strip none-sentinels and validate unit of measurement.
For sensors: Validate unit of measurement.
For all domaines: Set template type.
"""

Expand Down

0 comments on commit eab4c24

Please sign in to comment.