diff --git a/homeassistant/components/config/__init__.py b/homeassistant/components/config/__init__.py index 0815216ec79..c39a79f3e4a 100644 --- a/homeassistant/components/config/__init__.py +++ b/homeassistant/components/config/__init__.py @@ -226,9 +226,7 @@ class EditIdBasedConfigView(BaseEditConfigView): def _write_value(self, hass, data, config_key, new_value): """Set value.""" - value = self._get_value(hass, data, config_key) - - if value is None: + if (value := self._get_value(hass, data, config_key)) is None: value = {CONF_ID: config_key} data.append(value) diff --git a/homeassistant/components/config/auth.py b/homeassistant/components/config/auth.py index 54d992466f9..5c2e4ad2ed5 100644 --- a/homeassistant/components/config/auth.py +++ b/homeassistant/components/config/auth.py @@ -48,9 +48,7 @@ async def websocket_delete(hass, connection, msg): ) return - user = await hass.auth.async_get_user(msg["user_id"]) - - if not user: + if not (user := await hass.auth.async_get_user(msg["user_id"])): connection.send_message( websocket_api.error_message(msg["id"], "not_found", "User not found") ) @@ -92,9 +90,7 @@ async def websocket_create(hass, connection, msg): ) async def websocket_update(hass, connection, msg): """Update a user.""" - user = await hass.auth.async_get_user(msg.pop("user_id")) - - if not user: + if not (user := await hass.auth.async_get_user(msg.pop("user_id"))): connection.send_message( websocket_api.error_message( msg["id"], websocket_api.const.ERR_NOT_FOUND, "User not found" diff --git a/homeassistant/components/config/auth_provider_homeassistant.py b/homeassistant/components/config/auth_provider_homeassistant.py index 78175678a58..590ab4bff1a 100644 --- a/homeassistant/components/config/auth_provider_homeassistant.py +++ b/homeassistant/components/config/auth_provider_homeassistant.py @@ -31,9 +31,8 @@ async def async_setup(hass): async def websocket_create(hass, connection, msg): """Create credentials and attach to a user.""" provider = auth_ha.async_get_provider(hass) - user = await hass.auth.async_get_user(msg["user_id"]) - if user is None: + if (user := await hass.auth.async_get_user(msg["user_id"])) is None: connection.send_error(msg["id"], "not_found", "User not found") return @@ -149,9 +148,7 @@ async def websocket_admin_change_password(hass, connection, msg): if not connection.user.is_owner: raise Unauthorized(context=connection.context(msg)) - user = await hass.auth.async_get_user(msg["user_id"]) - - if user is None: + if (user := await hass.auth.async_get_user(msg["user_id"])) is None: connection.send_error(msg["id"], "user_not_found", "User not found") return diff --git a/homeassistant/components/config/config_entries.py b/homeassistant/components/config/config_entries.py index cf243137940..b1f686e23a4 100644 --- a/homeassistant/components/config/config_entries.py +++ b/homeassistant/components/config/config_entries.py @@ -249,8 +249,7 @@ def get_entry( msg_id: int, ) -> config_entries.ConfigEntry | None: """Get entry, send error message if it doesn't exist.""" - entry = hass.config_entries.async_get_entry(entry_id) - if entry is None: + if (entry := hass.config_entries.async_get_entry(entry_id)) is None: send_entry_not_found(connection, msg_id) return entry diff --git a/homeassistant/components/ddwrt/device_tracker.py b/homeassistant/components/ddwrt/device_tracker.py index 303cfe72b97..8b7e7ed8c04 100644 --- a/homeassistant/components/ddwrt/device_tracker.py +++ b/homeassistant/components/ddwrt/device_tracker.py @@ -67,8 +67,7 @@ class DdWrtDeviceScanner(DeviceScanner): # Test the router is accessible url = f"{self.protocol}://{self.host}/Status_Wireless.live.asp" - data = self.get_ddwrt_data(url) - if not data: + if not self.get_ddwrt_data(url): raise ConnectionError("Cannot connect to DD-Wrt router") def scan_devices(self): @@ -82,9 +81,8 @@ class DdWrtDeviceScanner(DeviceScanner): # If not initialised and not already scanned and not found. if device not in self.mac2name: url = f"{self.protocol}://{self.host}/Status_Lan.live.asp" - data = self.get_ddwrt_data(url) - if not data: + if not (data := self.get_ddwrt_data(url)): return None if not (dhcp_leases := data.get("dhcp_leases")): @@ -115,9 +113,8 @@ class DdWrtDeviceScanner(DeviceScanner): endpoint = "Wireless" if self.wireless_only else "Lan" url = f"{self.protocol}://{self.host}/Status_{endpoint}.live.asp" - data = self.get_ddwrt_data(url) - if not data: + if not (data := self.get_ddwrt_data(url)): return False self.last_results = [] diff --git a/homeassistant/components/digital_ocean/binary_sensor.py b/homeassistant/components/digital_ocean/binary_sensor.py index b5188092862..172c50d20b2 100644 --- a/homeassistant/components/digital_ocean/binary_sensor.py +++ b/homeassistant/components/digital_ocean/binary_sensor.py @@ -43,8 +43,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None): dev = [] for droplet in droplets: - droplet_id = digital.get_droplet_id(droplet) - if droplet_id is None: + if (droplet_id := digital.get_droplet_id(droplet)) is None: _LOGGER.error("Droplet %s is not available", droplet) return False dev.append(DigitalOceanBinarySensor(digital, droplet_id)) diff --git a/homeassistant/components/digital_ocean/switch.py b/homeassistant/components/digital_ocean/switch.py index d52c223c866..b323d5be5b4 100644 --- a/homeassistant/components/digital_ocean/switch.py +++ b/homeassistant/components/digital_ocean/switch.py @@ -40,8 +40,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None): dev = [] for droplet in droplets: - droplet_id = digital.get_droplet_id(droplet) - if droplet_id is None: + if (droplet_id := digital.get_droplet_id(droplet)) is None: _LOGGER.error("Droplet %s is not available", droplet) return False dev.append(DigitalOceanSwitch(digital, droplet_id)) diff --git a/homeassistant/components/epson/media_player.py b/homeassistant/components/epson/media_player.py index 5223a9663d0..6abeb3b0ba6 100644 --- a/homeassistant/components/epson/media_player.py +++ b/homeassistant/components/epson/media_player.py @@ -100,8 +100,7 @@ class EpsonProjectorMediaPlayer(MediaPlayerEntity): _LOGGER.debug("Setting unique_id for projector") if self._unique_id: return False - uid = await self._projector.get_serial_number() - if uid: + if uid := await self._projector.get_serial_number(): self.hass.config_entries.async_update_entry(self._entry, unique_id=uid) registry = async_get_entity_registry(self.hass) old_entity_id = registry.async_get_entity_id( diff --git a/homeassistant/components/gpmdp/media_player.py b/homeassistant/components/gpmdp/media_player.py index 649e0283f5a..c6dbe41c996 100644 --- a/homeassistant/components/gpmdp/media_player.py +++ b/homeassistant/components/gpmdp/media_player.py @@ -211,8 +211,7 @@ class GPMDP(MediaPlayerEntity): """Send ws messages to GPMDP and verify request id in response.""" try: - websocket = self.get_ws() - if websocket is None: + if (websocket := self.get_ws()) is None: self._status = STATE_OFF return self._request_id += 1 @@ -342,8 +341,7 @@ class GPMDP(MediaPlayerEntity): def media_seek(self, position): """Send media_seek command to media player.""" - websocket = self.get_ws() - if websocket is None: + if (websocket := self.get_ws()) is None: return websocket.send( json.dumps( @@ -358,24 +356,21 @@ class GPMDP(MediaPlayerEntity): def volume_up(self): """Send volume_up command to media player.""" - websocket = self.get_ws() - if websocket is None: + if (websocket := self.get_ws()) is None: return websocket.send('{"namespace": "volume", "method": "increaseVolume"}') self.schedule_update_ha_state() def volume_down(self): """Send volume_down command to media player.""" - websocket = self.get_ws() - if websocket is None: + if (websocket := self.get_ws()) is None: return websocket.send('{"namespace": "volume", "method": "decreaseVolume"}') self.schedule_update_ha_state() def set_volume_level(self, volume): """Set volume on media player, range(0..1).""" - websocket = self.get_ws() - if websocket is None: + if (websocket := self.get_ws()) is None: return websocket.send( json.dumps( diff --git a/homeassistant/components/intesishome/climate.py b/homeassistant/components/intesishome/climate.py index afe0fb519a8..4305489e25d 100644 --- a/homeassistant/components/intesishome/climate.py +++ b/homeassistant/components/intesishome/climate.py @@ -120,8 +120,7 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info= _LOGGER.error("Error connecting to the %s server", device_type) raise PlatformNotReady from ex - ih_devices = controller.get_devices() - if ih_devices: + if ih_devices := controller.get_devices(): async_add_entities( [ IntesisAC(ih_device_id, device, controller) @@ -194,8 +193,7 @@ class IntesisAC(ClimateEntity): self._support |= SUPPORT_PRESET_MODE # Setup HVAC modes - modes = controller.get_mode_list(ih_device_id) - if modes: + if modes := controller.get_mode_list(ih_device_id): mode_list = [MAP_IH_TO_HVAC_MODE[mode] for mode in modes] self._hvac_mode_list.extend(mode_list) self._hvac_mode_list.append(HVAC_MODE_OFF) diff --git a/homeassistant/components/lcn/config_flow.py b/homeassistant/components/lcn/config_flow.py index 20549ea32a3..9316d4309c9 100644 --- a/homeassistant/components/lcn/config_flow.py +++ b/homeassistant/components/lcn/config_flow.py @@ -91,8 +91,7 @@ class LcnFlowHandler(config_entries.ConfigFlow, domain=DOMAIN): return self.async_abort(reason="connection_timeout") # check if we already have a host with the same address configured - entry = get_config_entry(self.hass, data) - if entry: + if entry := get_config_entry(self.hass, data): entry.source = config_entries.SOURCE_IMPORT # Cleanup entity and device registry, if we imported from configuration.yaml to diff --git a/homeassistant/components/lutron_caseta/device_trigger.py b/homeassistant/components/lutron_caseta/device_trigger.py index 857ef9b56c5..ce50923f2f5 100644 --- a/homeassistant/components/lutron_caseta/device_trigger.py +++ b/homeassistant/components/lutron_caseta/device_trigger.py @@ -235,8 +235,7 @@ async def async_get_triggers( """List device triggers for lutron caseta devices.""" triggers = [] - device = get_button_device_by_dr_id(hass, device_id) - if not device: + if not (device := get_button_device_by_dr_id(hass, device_id)): raise InvalidDeviceAutomationConfig(f"Device not found: {device_id}") valid_buttons = DEVICE_TYPE_SUBTYPE_MAP.get(device["type"], []) diff --git a/homeassistant/components/meteoalarm/binary_sensor.py b/homeassistant/components/meteoalarm/binary_sensor.py index ce0fa97ecb9..079747afd3b 100644 --- a/homeassistant/components/meteoalarm/binary_sensor.py +++ b/homeassistant/components/meteoalarm/binary_sensor.py @@ -89,8 +89,7 @@ class MeteoAlertBinarySensor(BinarySensorEntity): self._attributes = {} self._state = False - alert = self._api.get_alert() - if alert: + if alert := self._api.get_alert(): expiration_date = dt_util.parse_datetime(alert["expires"]) now = dt_util.utcnow() diff --git a/homeassistant/components/squeezebox/media_player.py b/homeassistant/components/squeezebox/media_player.py index a0904c3178d..ef54f18bc9c 100644 --- a/homeassistant/components/squeezebox/media_player.py +++ b/homeassistant/components/squeezebox/media_player.py @@ -197,8 +197,7 @@ async def async_setup_entry(hass, config_entry, async_add_entities): known_players.append(entity) async_add_entities([entity]) - players = await lms.async_get_players() - if players: + if players := await lms.async_get_players(): for player in players: hass.async_create_task(_discovered_player(player)) diff --git a/homeassistant/components/subaru/__init__.py b/homeassistant/components/subaru/__init__.py index ce5ac6a95f5..220478da8bd 100644 --- a/homeassistant/components/subaru/__init__.py +++ b/homeassistant/components/subaru/__init__.py @@ -125,8 +125,7 @@ async def refresh_subaru_data(config_entry, vehicle_info, controller): await controller.fetch(vin, force=True) # Update our local data that will go to entity states - received_data = await controller.get_data(vin) - if received_data: + if received_data := await controller.get_data(vin): data[vin] = received_data return data diff --git a/homeassistant/components/swisscom/device_tracker.py b/homeassistant/components/swisscom/device_tracker.py index b50f0b31083..228f69d4c6c 100644 --- a/homeassistant/components/swisscom/device_tracker.py +++ b/homeassistant/components/swisscom/device_tracker.py @@ -65,8 +65,7 @@ class SwisscomDeviceScanner(DeviceScanner): return False _LOGGER.info("Loading data from Swisscom Internet Box") - data = self.get_swisscom_data() - if not data: + if not (data := self.get_swisscom_data()): return False active_clients = [client for client in data.values() if client["status"]] diff --git a/homeassistant/components/zoneminder/camera.py b/homeassistant/components/zoneminder/camera.py index 6144fe11226..0f9f5e2f679 100644 --- a/homeassistant/components/zoneminder/camera.py +++ b/homeassistant/components/zoneminder/camera.py @@ -19,8 +19,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None): filter_urllib3_logging() cameras = [] for zm_client in hass.data[ZONEMINDER_DOMAIN].values(): - monitors = zm_client.get_monitors() - if not monitors: + if not (monitors := zm_client.get_monitors()): _LOGGER.warning("Could not fetch monitors from ZoneMinder host: %s") return diff --git a/homeassistant/components/zoneminder/sensor.py b/homeassistant/components/zoneminder/sensor.py index 0eb3e9d63a2..90c5f8d78eb 100644 --- a/homeassistant/components/zoneminder/sensor.py +++ b/homeassistant/components/zoneminder/sensor.py @@ -66,8 +66,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None): sensors = [] for zm_client in hass.data[ZONEMINDER_DOMAIN].values(): - monitors = zm_client.get_monitors() - if not monitors: + if not (monitors := zm_client.get_monitors()): _LOGGER.warning("Could not fetch any monitors from ZoneMinder") for monitor in monitors: diff --git a/homeassistant/components/zoneminder/switch.py b/homeassistant/components/zoneminder/switch.py index 0428ddbf888..b7ba3f48f10 100644 --- a/homeassistant/components/zoneminder/switch.py +++ b/homeassistant/components/zoneminder/switch.py @@ -28,8 +28,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None): switches = [] for zm_client in hass.data[ZONEMINDER_DOMAIN].values(): - monitors = zm_client.get_monitors() - if not monitors: + if not (monitors := zm_client.get_monitors()): _LOGGER.warning("Could not fetch monitors from ZoneMinder") return