From d385a85ccbddaab9c4ba3754812b110f08b88b70 Mon Sep 17 00:00:00 2001 From: epenet <6771947+epenet@users.noreply.github.com> Date: Wed, 2 Nov 2022 18:46:03 +0100 Subject: [PATCH] Cleanup schema validation in scrape sensor (#81419) --- homeassistant/components/scrape/sensor.py | 26 ++++++++++------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/homeassistant/components/scrape/sensor.py b/homeassistant/components/scrape/sensor.py index e911ade5d72..b606f00aaa7 100644 --- a/homeassistant/components/scrape/sensor.py +++ b/homeassistant/components/scrape/sensor.py @@ -83,7 +83,8 @@ async def async_setup_platform( discovery_info: DiscoveryInfoType | None = None, ) -> None: """Set up the Web scrape sensor.""" - entities: list[ScrapeSensor] = [] + coordinator: ScrapeCoordinator + sensors_config: list[ConfigType] if discovery_info is None: async_create_issue( hass, @@ -99,27 +100,22 @@ async def async_setup_platform( coordinator = ScrapeCoordinator(hass, rest, SCAN_INTERVAL) - sensors_config: list[tuple[ConfigType, ConfigType]] = [ - ( - config, - vol.Schema(TEMPLATE_SENSOR_BASE_SCHEMA.schema, extra=vol.REMOVE_EXTRA)( - config - ), + sensors_config = [ + vol.Schema(TEMPLATE_SENSOR_BASE_SCHEMA.schema, extra=vol.ALLOW_EXTRA)( + config ) ] else: coordinator = discovery_info["coordinator"] - sensors_config = [ - (sensor_config, sensor_config) - for sensor_config in discovery_info["configs"] - ] + sensors_config = discovery_info["configs"] await coordinator.async_refresh() if coordinator.data is None: raise PlatformNotReady - for sensor_config, template_config in sensors_config: + entities: list[ScrapeSensor] = [] + for sensor_config in sensors_config: value_template: Template | None = sensor_config.get(CONF_VALUE_TEMPLATE) if value_template is not None: value_template.hass = hass @@ -128,9 +124,9 @@ async def async_setup_platform( ScrapeSensor( hass, coordinator, - template_config, - template_config[CONF_NAME], - template_config.get(CONF_UNIQUE_ID), + sensor_config, + sensor_config[CONF_NAME], + sensor_config.get(CONF_UNIQUE_ID), sensor_config.get(CONF_SELECT), sensor_config.get(CONF_ATTRIBUTE), sensor_config[CONF_INDEX], -- GitLab