Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 0 additions & 10 deletions homeassistant/components/snapcast/config_flow.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,13 +51,3 @@ async def async_step_user(self, user_input=None) -> FlowResult:
return self.async_show_form(
step_id="user", data_schema=SNAPCAST_SCHEMA, errors=errors
)

async def async_step_import(self, import_config: dict[str, str]) -> FlowResult:
"""Import a config entry from configuration.yaml."""
self._async_abort_entries_match(
{
CONF_HOST: (import_config[CONF_HOST]),
CONF_PORT: (import_config[CONF_PORT]),
}
)
return self.async_create_entry(title=DEFAULT_TITLE, data=import_config)
41 changes: 2 additions & 39 deletions homeassistant/components/snapcast/media_player.py
Original file line number Diff line number Diff line change
@@ -1,24 +1,19 @@
"""Support for interacting with Snapcast clients."""
from __future__ import annotations

import logging

from snapcast.control.server import CONTROL_PORT, Snapserver
from snapcast.control.server import Snapserver
import voluptuous as vol

from homeassistant.components.media_player import (
PLATFORM_SCHEMA,
MediaPlayerEntity,
MediaPlayerEntityFeature,
MediaPlayerState,
)
from homeassistant.config_entries import SOURCE_IMPORT, ConfigEntry
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_HOST, CONF_PORT
from homeassistant.core import HomeAssistant
from homeassistant.helpers import config_validation as cv, entity_platform
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 .const import (
ATTR_LATENCY,
Expand All @@ -35,12 +30,6 @@
SERVICE_UNJOIN,
)

_LOGGER = logging.getLogger(__name__)

PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
{vol.Required(CONF_HOST): cv.string, vol.Optional(CONF_PORT): cv.port}
)

STREAM_STATUS = {
"idle": MediaPlayerState.IDLE,
"playing": MediaPlayerState.PLAYING,
Expand Down Expand Up @@ -93,32 +82,6 @@ async def async_setup_entry(
].hass_async_add_entities = async_add_entities


async def async_setup_platform(
hass: HomeAssistant,
config: ConfigType,
async_add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the Snapcast platform."""
async_create_issue(
hass,
DOMAIN,
"deprecated_yaml",
breaks_in_ha_version="2023.6.0",
is_fixable=False,
severity=IssueSeverity.WARNING,
translation_key="deprecated_yaml",
)

config[CONF_PORT] = config.get(CONF_PORT, CONTROL_PORT)

hass.async_create_task(
hass.config_entries.flow.async_init(
DOMAIN, context={"source": SOURCE_IMPORT}, data=config
)
)


async def handle_async_join(entity, service_call):
"""Handle the entity service join."""
if not isinstance(entity, SnapcastClientDevice):
Expand Down
6 changes: 0 additions & 6 deletions homeassistant/components/snapcast/strings.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,5 @@
"cannot_connect": "[%key:common::config_flow::error::cannot_connect%]",
"invalid_host": "[%key:common::config_flow::error::invalid_host%]"
}
},
"issues": {
"deprecated_yaml": {
"title": "The Snapcast YAML configuration is being removed",
"description": "Configuring Snapcast using YAML is being removed.\n\nYour existing YAML configuration has been imported into the UI automatically.\n\nRemove the Snapcast YAML configuration from your configuration.yaml file and restart Home Assistant to fix this issue."
}
}
}
15 changes: 0 additions & 15 deletions tests/components/snapcast/test_config_flow.py
Original file line number Diff line number Diff line change
Expand Up @@ -93,18 +93,3 @@ async def test_abort(

assert result["type"] == FlowResultType.ABORT
assert result["reason"] == "already_configured"


async def test_import(hass: HomeAssistant) -> None:
"""Test successful import."""

result = await hass.config_entries.flow.async_init(
DOMAIN,
context={"source": config_entries.SOURCE_IMPORT},
data=TEST_CONNECTION,
)
await hass.async_block_till_done()

assert result["type"] == FlowResultType.CREATE_ENTRY
assert result["title"] == "Snapcast"
assert result["data"] == {CONF_HOST: "snapserver.test", CONF_PORT: 1705}