diff --git a/homeassistant/components/season/config_flow.py b/homeassistant/components/season/config_flow.py index 854c0158439..39a52e57b10 100644 --- a/homeassistant/components/season/config_flow.py +++ b/homeassistant/components/season/config_flow.py @@ -6,7 +6,7 @@ from typing import Any import voluptuous as vol from homeassistant.config_entries import ConfigFlow -from homeassistant.const import CONF_NAME, CONF_TYPE +from homeassistant.const import CONF_TYPE from homeassistant.data_entry_flow import FlowResult from .const import DEFAULT_NAME, DOMAIN, TYPE_ASTRONOMICAL, TYPE_METEOROLOGICAL @@ -25,7 +25,7 @@ class SeasonConfigFlow(ConfigFlow, domain=DOMAIN): await self.async_set_unique_id(user_input[CONF_TYPE]) self._abort_if_unique_id_configured() return self.async_create_entry( - title=user_input.get(CONF_NAME, DEFAULT_NAME), + title=DEFAULT_NAME, data={CONF_TYPE: user_input[CONF_TYPE]}, ) @@ -42,7 +42,3 @@ class SeasonConfigFlow(ConfigFlow, domain=DOMAIN): }, ), ) - - async def async_step_import(self, user_input: dict[str, Any]) -> FlowResult: - """Handle import from configuration.yaml.""" - return await self.async_step_user(user_input) diff --git a/homeassistant/components/season/sensor.py b/homeassistant/components/season/sensor.py index a568e51ed9d..27a46943bb3 100644 --- a/homeassistant/components/season/sensor.py +++ b/homeassistant/components/season/sensor.py @@ -4,25 +4,17 @@ from __future__ import annotations from datetime import date, datetime import ephem -import voluptuous as vol -from homeassistant.components.sensor import ( - PLATFORM_SCHEMA as PARENT_PLATFORM_SCHEMA, - SensorDeviceClass, - SensorEntity, -) -from homeassistant.config_entries import SOURCE_IMPORT, ConfigEntry -from homeassistant.const import CONF_NAME, CONF_TYPE +from homeassistant.components.sensor import SensorDeviceClass, SensorEntity +from homeassistant.config_entries import ConfigEntry +from homeassistant.const import CONF_TYPE from homeassistant.core import HomeAssistant -import homeassistant.helpers.config_validation as cv from homeassistant.helpers.device_registry import DeviceEntryType from homeassistant.helpers.entity 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.util.dt import utcnow -from .const import DEFAULT_NAME, DOMAIN, TYPE_ASTRONOMICAL, VALID_TYPES +from .const import DOMAIN, TYPE_ASTRONOMICAL EQUATOR = "equator" @@ -49,39 +41,6 @@ SEASON_ICONS = { } -PLATFORM_SCHEMA = PARENT_PLATFORM_SCHEMA.extend( - { - vol.Optional(CONF_TYPE, default=TYPE_ASTRONOMICAL): vol.In(VALID_TYPES), - vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string, - } -) - - -async def async_setup_platform( - hass: HomeAssistant, - config: ConfigType, - async_add_entities: AddEntitiesCallback, - discovery_info: DiscoveryInfoType | None = None, -) -> None: - """Set up the season sensor platform.""" - async_create_issue( - hass, - DOMAIN, - "removed_yaml", - breaks_in_ha_version="2022.12.0", - is_fixable=False, - severity=IssueSeverity.WARNING, - translation_key="removed_yaml", - ) - hass.async_create_task( - hass.config_entries.flow.async_init( - DOMAIN, - context={"source": SOURCE_IMPORT}, - data=config, - ) - ) - - async def async_setup_entry( hass: HomeAssistant, entry: ConfigEntry, @@ -144,7 +103,7 @@ class SeasonSensorEntity(SensorEntity): self.hemisphere = hemisphere self.type = entry.data[CONF_TYPE] self._attr_device_info = DeviceInfo( - name=entry.title, + name="Season", identifiers={(DOMAIN, entry.entry_id)}, entry_type=DeviceEntryType.SERVICE, ) diff --git a/tests/components/season/test_config_flow.py b/tests/components/season/test_config_flow.py index 2cf9e46b666..6579bb53a9b 100644 --- a/tests/components/season/test_config_flow.py +++ b/tests/components/season/test_config_flow.py @@ -1,15 +1,9 @@ """Tests for the Season config flow.""" from unittest.mock import MagicMock -import pytest - -from homeassistant.components.season.const import ( - DOMAIN, - TYPE_ASTRONOMICAL, - TYPE_METEOROLOGICAL, -) -from homeassistant.config_entries import SOURCE_IMPORT, SOURCE_USER -from homeassistant.const import CONF_NAME, CONF_TYPE +from homeassistant.components.season.const import DOMAIN, TYPE_ASTRONOMICAL +from homeassistant.config_entries import SOURCE_USER +from homeassistant.const import CONF_TYPE from homeassistant.core import HomeAssistant from homeassistant.data_entry_flow import FlowResultType @@ -38,34 +32,16 @@ async def test_full_user_flow( assert result2.get("data") == {CONF_TYPE: TYPE_ASTRONOMICAL} -@pytest.mark.parametrize("source", [SOURCE_USER, SOURCE_IMPORT]) async def test_single_instance_allowed( hass: HomeAssistant, mock_config_entry: MockConfigEntry, - source: str, ) -> None: """Test we abort if already setup.""" mock_config_entry.add_to_hass(hass) result = await hass.config_entries.flow.async_init( - DOMAIN, context={"source": source}, data={CONF_TYPE: TYPE_ASTRONOMICAL} + DOMAIN, context={"source": SOURCE_USER}, data={CONF_TYPE: TYPE_ASTRONOMICAL} ) assert result.get("type") == FlowResultType.ABORT assert result.get("reason") == "already_configured" - - -async def test_import_flow( - hass: HomeAssistant, - mock_setup_entry: MagicMock, -) -> None: - """Test the import configuration flow.""" - result = await hass.config_entries.flow.async_init( - DOMAIN, - context={"source": SOURCE_IMPORT}, - data={CONF_NAME: "My Seasons", CONF_TYPE: TYPE_METEOROLOGICAL}, - ) - - assert result.get("type") == FlowResultType.CREATE_ENTRY - assert result.get("title") == "My Seasons" - assert result.get("data") == {CONF_TYPE: TYPE_METEOROLOGICAL} diff --git a/tests/components/season/test_init.py b/tests/components/season/test_init.py index 94012ba16dd..9d964512160 100644 --- a/tests/components/season/test_init.py +++ b/tests/components/season/test_init.py @@ -1,12 +1,7 @@ """Tests for the Season integration.""" -from unittest.mock import AsyncMock - -from homeassistant.components.season.const import DOMAIN, TYPE_ASTRONOMICAL -from homeassistant.components.sensor import DOMAIN as SENSOR_DOMAIN +from homeassistant.components.season.const import DOMAIN from homeassistant.config_entries import ConfigEntryState -from homeassistant.const import CONF_NAME, CONF_TYPE from homeassistant.core import HomeAssistant -from homeassistant.setup import async_setup_component from tests.common import MockConfigEntry @@ -27,29 +22,3 @@ async def test_load_unload_config_entry( assert not hass.data.get(DOMAIN) assert mock_config_entry.state is ConfigEntryState.NOT_LOADED - - -async def test_import_config( - hass: HomeAssistant, - mock_setup_entry: AsyncMock, -) -> None: - """Test Season being set up from config via import.""" - assert await async_setup_component( - hass, - SENSOR_DOMAIN, - { - SENSOR_DOMAIN: { - "platform": DOMAIN, - CONF_NAME: "My Season", - } - }, - ) - await hass.async_block_till_done() - - config_entries = hass.config_entries.async_entries(DOMAIN) - assert len(config_entries) == 1 - - entry = config_entries[0] - assert entry.title == "My Season" - assert entry.unique_id == TYPE_ASTRONOMICAL - assert entry.data == {CONF_TYPE: TYPE_ASTRONOMICAL}