From d078a4396cc1264b33c856897f1828027dc53c08 Mon Sep 17 00:00:00 2001 From: G Johansson Date: Sat, 4 Nov 2023 17:59:12 +0100 Subject: [PATCH] Remove platform YAML from Qnap (#103377) --- homeassistant/components/qnap/config_flow.py | 12 --- homeassistant/components/qnap/sensor.py | 77 +------------------- tests/components/qnap/test_config_flow.py | 24 ------ 3 files changed, 2 insertions(+), 111 deletions(-) diff --git a/homeassistant/components/qnap/config_flow.py b/homeassistant/components/qnap/config_flow.py index 689fe30a870..04b5340fa8a 100644 --- a/homeassistant/components/qnap/config_flow.py +++ b/homeassistant/components/qnap/config_flow.py @@ -11,7 +11,6 @@ import voluptuous as vol from homeassistant import config_entries from homeassistant.const import ( CONF_HOST, - CONF_MONITORED_CONDITIONS, CONF_PASSWORD, CONF_PORT, CONF_SSL, @@ -22,9 +21,6 @@ from homeassistant.data_entry_flow import FlowResult from homeassistant.helpers import config_validation as cv from .const import ( - CONF_DRIVES, - CONF_NICS, - CONF_VOLUMES, DEFAULT_PORT, DEFAULT_SSL, DEFAULT_TIMEOUT, @@ -51,14 +47,6 @@ class QnapConfigFlow(config_entries.ConfigFlow, domain=DOMAIN): VERSION = 1 - async def async_step_import(self, import_info: dict[str, Any]) -> FlowResult: - """Set the config entry up from yaml.""" - import_info.pop(CONF_MONITORED_CONDITIONS, None) - import_info.pop(CONF_NICS, None) - import_info.pop(CONF_DRIVES, None) - import_info.pop(CONF_VOLUMES, None) - return await self.async_step_user(import_info) - async def async_step_user( self, user_input: dict[str, Any] | None = None, diff --git a/homeassistant/components/qnap/sensor.py b/homeassistant/components/qnap/sensor.py index dfd03deca16..4677d2aabb6 100644 --- a/homeassistant/components/qnap/sensor.py +++ b/homeassistant/components/qnap/sensor.py @@ -1,13 +1,8 @@ """Support for QNAP NAS Sensors.""" from __future__ import annotations -import logging - -import voluptuous as vol - from homeassistant import config_entries from homeassistant.components.sensor import ( - PLATFORM_SCHEMA, SensorDeviceClass, SensorEntity, SensorEntityDescription, @@ -15,40 +10,20 @@ from homeassistant.components.sensor import ( ) from homeassistant.const import ( ATTR_NAME, - CONF_HOST, - CONF_MONITORED_CONDITIONS, - CONF_PASSWORD, - CONF_PORT, - CONF_SSL, - CONF_TIMEOUT, - CONF_USERNAME, - CONF_VERIFY_SSL, PERCENTAGE, UnitOfDataRate, UnitOfInformation, UnitOfTemperature, ) -from homeassistant.core import DOMAIN as HOMEASSISTANT_DOMAIN, HomeAssistant +from homeassistant.core import HomeAssistant from homeassistant.exceptions import PlatformNotReady -import homeassistant.helpers.config_validation as cv from homeassistant.helpers.device_registry import DeviceInfo from homeassistant.helpers.entity_platform import AddEntitiesCallback -from homeassistant.helpers.issue_registry import IssueSeverity, async_create_issue -from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType from homeassistant.helpers.update_coordinator import CoordinatorEntity -from .const import ( - CONF_DRIVES, - CONF_NICS, - CONF_VOLUMES, - DEFAULT_PORT, - DEFAULT_TIMEOUT, - DOMAIN, -) +from .const import DOMAIN from .coordinator import QnapCoordinator -_LOGGER = logging.getLogger(__name__) - ATTR_DRIVE = "Drive" ATTR_IP = "IP Address" ATTR_MAC = "MAC Address" @@ -221,54 +196,6 @@ SENSOR_KEYS: list[str] = [ ) ] -PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend( - { - vol.Required(CONF_HOST): cv.string, - vol.Optional(CONF_SSL, default=False): cv.boolean, - vol.Optional(CONF_VERIFY_SSL, default=True): cv.boolean, - vol.Optional(CONF_PORT, default=DEFAULT_PORT): cv.port, - vol.Optional(CONF_TIMEOUT, default=DEFAULT_TIMEOUT): cv.positive_int, - vol.Required(CONF_USERNAME): cv.string, - vol.Required(CONF_PASSWORD): cv.string, - vol.Optional(CONF_MONITORED_CONDITIONS): vol.All( - cv.ensure_list, [vol.In(SENSOR_KEYS)] - ), - vol.Optional(CONF_NICS): cv.ensure_list, - vol.Optional(CONF_DRIVES): cv.ensure_list, - vol.Optional(CONF_VOLUMES): cv.ensure_list, - } -) - - -async def async_setup_platform( - hass: HomeAssistant, - config: ConfigType, - async_add_entities: AddEntitiesCallback, - discovery_info: DiscoveryInfoType | None = None, -) -> None: - """Set up the qnap sensor platform from yaml.""" - - async_create_issue( - hass, - HOMEASSISTANT_DOMAIN, - f"deprecated_yaml_{DOMAIN}", - breaks_in_ha_version="2023.12.0", - is_fixable=False, - issue_domain=DOMAIN, - severity=IssueSeverity.WARNING, - translation_key="deprecated_yaml", - translation_placeholders={ - "domain": DOMAIN, - "integration_title": "QNAP", - }, - ) - - hass.async_create_task( - hass.config_entries.flow.async_init( - DOMAIN, context={"source": config_entries.SOURCE_IMPORT}, data=config - ) - ) - async def async_setup_entry( hass: HomeAssistant, diff --git a/tests/components/qnap/test_config_flow.py b/tests/components/qnap/test_config_flow.py index eb77109d62e..75af07cbf8b 100644 --- a/tests/components/qnap/test_config_flow.py +++ b/tests/components/qnap/test_config_flow.py @@ -84,27 +84,3 @@ async def test_config_flow(hass: HomeAssistant, qnap_connect: MagicMock) -> None CONF_VERIFY_SSL: const.DEFAULT_VERIFY_SSL, CONF_PORT: const.DEFAULT_PORT, } - - -async def test_config_flow_import(hass: HomeAssistant) -> None: - """Test import of YAML config.""" - data = STANDARD_CONFIG - data[CONF_SSL] = const.DEFAULT_SSL - data[CONF_VERIFY_SSL] = const.DEFAULT_VERIFY_SSL - data[CONF_PORT] = const.DEFAULT_PORT - result = await hass.config_entries.flow.async_init( - const.DOMAIN, - context={"source": config_entries.SOURCE_IMPORT}, - data=data, - ) - - assert result["type"] is data_entry_flow.FlowResultType.CREATE_ENTRY - assert result["title"] == "Test NAS name" - assert result["data"] == { - CONF_HOST: "1.2.3.4", - CONF_USERNAME: "admin", - CONF_PASSWORD: "password", - CONF_SSL: const.DEFAULT_SSL, - CONF_VERIFY_SSL: const.DEFAULT_VERIFY_SSL, - CONF_PORT: const.DEFAULT_PORT, - }