diff --git a/homeassistant/components/dhcp/__init__.py b/homeassistant/components/dhcp/__init__.py index 1756f620f46..8581a5f2241 100644 --- a/homeassistant/components/dhcp/__init__.py +++ b/homeassistant/components/dhcp/__init__.py @@ -52,14 +52,11 @@ from homeassistant.helpers.event import ( async_track_state_added_domain, async_track_time_interval, ) -from homeassistant.helpers.frame import report from homeassistant.helpers.typing import ConfigType from homeassistant.loader import DHCPMatcher, async_get_dhcp from homeassistant.util.async_ import run_callback_threadsafe from homeassistant.util.network import is_invalid, is_link_local, is_loopback -from .const import DOMAIN - if TYPE_CHECKING: from scapy.packet import Packet from scapy.sendrecv import AsyncSniffer @@ -86,36 +83,6 @@ class DhcpServiceInfo(BaseServiceInfo): hostname: str macaddress: str - def __getitem__(self, name: str) -> Any: - """ - Enable method for compatibility reason. - - Deprecated, and will be removed in version 2022.6. - """ - report( - f"accessed discovery_info['{name}'] instead of discovery_info.{name}; " - "this will fail in version 2022.6", - exclude_integrations={DOMAIN}, - error_if_core=False, - ) - return getattr(self, name) - - def get(self, name: str, default: Any = None) -> Any: - """ - Enable method for compatibility reason. - - Deprecated, and will be removed in version 2022.6. - """ - report( - f"accessed discovery_info.get('{name}') instead of discovery_info.{name}; " - "this will fail in version 2022.6", - exclude_integrations={DOMAIN}, - error_if_core=False, - ) - if hasattr(self, name): - return getattr(self, name) - return default - async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: """Set up the dhcp component.""" diff --git a/homeassistant/components/mqtt/__init__.py b/homeassistant/components/mqtt/__init__.py index 7c16da7f2aa..162e344f852 100644 --- a/homeassistant/components/mqtt/__init__.py +++ b/homeassistant/components/mqtt/__init__.py @@ -54,7 +54,6 @@ from homeassistant.helpers import config_validation as cv, event, template from homeassistant.helpers.device_registry import DeviceEntry from homeassistant.helpers.dispatcher import async_dispatcher_connect, dispatcher_send from homeassistant.helpers.entity import Entity -from homeassistant.helpers.frame import report from homeassistant.helpers.typing import ConfigType, TemplateVarsType from homeassistant.loader import bind_hass from homeassistant.util import dt as dt_util @@ -419,20 +418,6 @@ class MqttServiceInfo(BaseServiceInfo): subscribed_topic: str timestamp: dt.datetime - def __getitem__(self, name: str) -> Any: - """ - Allow property access by name for compatibility reason. - - Deprecated, and will be removed in version 2022.6. - """ - report( - f"accessed discovery_info['{name}'] instead of discovery_info.{name}; " - "this will fail in version 2022.6", - exclude_integrations={DOMAIN}, - error_if_core=False, - ) - return getattr(self, name) - def publish( hass: HomeAssistant, diff --git a/homeassistant/components/ssdp/__init__.py b/homeassistant/components/ssdp/__init__.py index 8e8663a9734..e854472f21f 100644 --- a/homeassistant/components/ssdp/__init__.py +++ b/homeassistant/components/ssdp/__init__.py @@ -25,7 +25,6 @@ from homeassistant.data_entry_flow import BaseServiceInfo from homeassistant.helpers import discovery_flow from homeassistant.helpers.aiohttp_client import async_get_clientsession from homeassistant.helpers.event import async_track_time_interval -from homeassistant.helpers.frame import report from homeassistant.helpers.typing import ConfigType from homeassistant.loader import async_get_ssdp, bind_hass @@ -111,63 +110,6 @@ class SsdpServiceInfo( ): """Prepared info from ssdp/upnp entries.""" - def __getitem__(self, name: str) -> Any: - """ - Allow property access by name for compatibility reason. - - Deprecated, and will be removed in version 2022.6. - """ - report( - f"accessed discovery_info['{name}'] instead of discovery_info.{name}, " - f"discovery_info.upnp['{name}'] " - f"or discovery_info.ssdp_headers['{name}']; " - "this will fail in version 2022.6", - exclude_integrations={DOMAIN}, - error_if_core=False, - ) - # Use a property if it is available, fallback to upnp data - if hasattr(self, name): - return getattr(self, name) - if name in self.ssdp_headers and name not in self.upnp: - return self.ssdp_headers.get(name) - return self.upnp[name] - - def get(self, name: str, default: Any = None) -> Any: - """ - Enable method for compatibility reason. - - Deprecated, and will be removed in version 2022.6. - """ - report( - f"accessed discovery_info.get('{name}') instead of discovery_info.{name}, " - f"discovery_info.upnp.get('{name}') " - f"or discovery_info.ssdp_headers.get('{name}'); " - "this will fail in version 2022.6", - exclude_integrations={DOMAIN}, - error_if_core=False, - ) - if hasattr(self, name): - return getattr(self, name) - return self.upnp.get(name, self.ssdp_headers.get(name, default)) - - def __contains__(self, name: str) -> bool: - """ - Enable method for compatibility reason. - - Deprecated, and will be removed in version 2022.6. - """ - report( - f"accessed discovery_info.__contains__('{name}') " - f"instead of discovery_info.upnp.__contains__('{name}') " - f"or discovery_info.ssdp_headers.__contains__('{name}'); " - "this will fail in version 2022.6", - exclude_integrations={DOMAIN}, - error_if_core=False, - ) - if hasattr(self, name): - return getattr(self, name) is not None - return name in self.upnp or name in self.ssdp_headers - SsdpChange = Enum("SsdpChange", "ALIVE BYEBYE UPDATE") SsdpCallback = Callable[[SsdpServiceInfo, SsdpChange], Awaitable] diff --git a/homeassistant/components/usb/__init__.py b/homeassistant/components/usb/__init__.py index 5ac390ad168..7a56a659d07 100644 --- a/homeassistant/components/usb/__init__.py +++ b/homeassistant/components/usb/__init__.py @@ -6,7 +6,7 @@ import fnmatch import logging import os import sys -from typing import TYPE_CHECKING, Any +from typing import TYPE_CHECKING from serial.tools.list_ports import comports from serial.tools.list_ports_common import ListPortInfo @@ -20,7 +20,6 @@ from homeassistant.core import Event, HomeAssistant, callback from homeassistant.data_entry_flow import BaseServiceInfo from homeassistant.helpers import discovery_flow, system_info from homeassistant.helpers.debounce import Debouncer -from homeassistant.helpers.frame import report from homeassistant.helpers.typing import ConfigType from homeassistant.loader import async_get_usb @@ -47,20 +46,6 @@ class UsbServiceInfo(BaseServiceInfo): manufacturer: str | None description: str | None - def __getitem__(self, name: str) -> Any: - """ - Allow property access by name for compatibility reason. - - Deprecated, and will be removed in version 2022.6. - """ - report( - f"accessed discovery_info['{name}'] instead of discovery_info.{name}; " - "this will fail in version 2022.6", - exclude_integrations={DOMAIN}, - error_if_core=False, - ) - return getattr(self, name) - def human_readable_device_name( device: str, diff --git a/homeassistant/components/zeroconf/__init__.py b/homeassistant/components/zeroconf/__init__.py index ffe4140a434..2c16868f9de 100644 --- a/homeassistant/components/zeroconf/__init__.py +++ b/homeassistant/components/zeroconf/__init__.py @@ -30,7 +30,6 @@ from homeassistant.core import Event, HomeAssistant, callback from homeassistant.data_entry_flow import BaseServiceInfo from homeassistant.helpers import discovery_flow import homeassistant.helpers.config_validation as cv -from homeassistant.helpers.frame import report from homeassistant.helpers.network import NoURLAvailableError, get_url from homeassistant.helpers.typing import ConfigType from homeassistant.loader import ( @@ -108,36 +107,6 @@ class ZeroconfServiceInfo(BaseServiceInfo): name: str properties: dict[str, Any] - def __getitem__(self, name: str) -> Any: - """ - Enable method for compatibility reason. - - Deprecated, and will be removed in version 2022.6. - """ - report( - f"accessed discovery_info['{name}'] instead of discovery_info.{name}; " - "this will fail in version 2022.6", - exclude_integrations={DOMAIN}, - error_if_core=False, - ) - return getattr(self, name) - - def get(self, name: str, default: Any = None) -> Any: - """ - Enable method for compatibility reason. - - Deprecated, and will be removed in version 2022.6. - """ - report( - f"accessed discovery_info.get('{name}') instead of discovery_info.{name}; " - "this will fail in version 2022.6", - exclude_integrations={DOMAIN}, - error_if_core=False, - ) - if hasattr(self, name): - return getattr(self, name) - return default - @bind_hass async def async_get_instance(hass: HomeAssistant) -> HaZeroconf: diff --git a/tests/components/dhcp/test_init.py b/tests/components/dhcp/test_init.py index a809d6eb5ab..c6d889eab72 100644 --- a/tests/components/dhcp/test_init.py +++ b/tests/components/dhcp/test_init.py @@ -3,7 +3,6 @@ import datetime import threading from unittest.mock import MagicMock, patch -import pytest from scapy import arch # pylint: disable=unused-import # noqa: F401 from scapy.error import Scapy_Exception from scapy.layers.dhcp import DHCP @@ -973,27 +972,3 @@ async def test_aiodiscover_finds_new_hosts_after_interval(hass): hostname="connect", macaddress="b8b7f16db533", ) - - -@pytest.mark.usefixtures("mock_integration_frame") -async def test_service_info_compatibility(hass, caplog): - """Test compatibility with old-style dict. - - To be removed in 2022.6 - """ - discovery_info = dhcp.DhcpServiceInfo( - ip="192.168.210.56", - hostname="connect", - macaddress="b8b7f16db533", - ) - - with patch("homeassistant.helpers.frame._REPORTED_INTEGRATIONS", set()): - assert discovery_info["ip"] == "192.168.210.56" - assert "Detected integration that accessed discovery_info['ip']" in caplog.text - - with patch("homeassistant.helpers.frame._REPORTED_INTEGRATIONS", set()): - assert discovery_info.get("ip") == "192.168.210.56" - assert "Detected integration that accessed discovery_info.get('ip')" in caplog.text - - assert discovery_info.get("ip", "fallback_host") == "192.168.210.56" - assert discovery_info.get("invalid_key", "fallback_host") == "fallback_host" diff --git a/tests/components/mqtt/test_init.py b/tests/components/mqtt/test_init.py index 763cbfc1b71..543174653ec 100644 --- a/tests/components/mqtt/test_init.py +++ b/tests/components/mqtt/test_init.py @@ -2380,26 +2380,6 @@ async def test_publish_json_from_template(hass, mqtt_mock): assert mqtt_mock.async_publish.call_args[0][1] == test_str -@pytest.mark.usefixtures("mock_integration_frame") -async def test_service_info_compatibility(hass, caplog): - """Test compatibility with old-style dict. - - To be removed in 2022.6 - """ - discovery_info = mqtt.MqttServiceInfo( - topic="tasmota/discovery/DC4F220848A2/config", - payload="", - qos=0, - retain=False, - subscribed_topic="tasmota/discovery/#", - timestamp=None, - ) - - with patch("homeassistant.helpers.frame._REPORTED_INTEGRATIONS", set()): - assert discovery_info["topic"] == "tasmota/discovery/DC4F220848A2/config" - assert "Detected integration that accessed discovery_info['topic']" in caplog.text - - async def test_subscribe_connection_status(hass, mqtt_mock, mqtt_client_mock): """Test connextion status subscription.""" mqtt_connected_calls = [] diff --git a/tests/components/ssdp/test_init.py b/tests/components/ssdp/test_init.py index 5bbc90307b5..bf88f45acf9 100644 --- a/tests/components/ssdp/test_init.py +++ b/tests/components/ssdp/test_init.py @@ -75,17 +75,6 @@ async def test_ssdp_flow_dispatched_on_st(mock_get_ssdp, hass, caplog, mock_flow assert mock_call_data.x_homeassistant_matching_domains == {"mock-domain"} assert mock_call_data.upnp == {ssdp.ATTR_UPNP_UDN: "uuid:mock-udn"} assert "Failed to fetch ssdp data" not in caplog.text - # Compatibility with old dict access (to be removed after 2022.6) - assert mock_call_data[ssdp.ATTR_SSDP_ST] == "mock-st" - assert mock_call_data[ssdp.ATTR_SSDP_LOCATION] == "http://1.1.1.1" - assert mock_call_data[ssdp.ATTR_SSDP_USN] == "uuid:mock-udn::mock-st" - assert mock_call_data[ssdp.ATTR_SSDP_SERVER] == "mock-server" - assert mock_call_data[ssdp.ATTR_SSDP_EXT] == "" - assert mock_call_data[ssdp.ATTR_UPNP_UDN] == "uuid:mock-udn" - assert mock_call_data[ssdp.ATTR_SSDP_UDN] == ANY - assert mock_call_data["_timestamp"] == ANY - assert mock_call_data[ssdp.ATTR_HA_MATCHING_DOMAINS] == {"mock-domain"} - # End compatibility checks @patch( @@ -129,17 +118,6 @@ async def test_ssdp_flow_dispatched_on_manufacturer_url( assert mock_call_data.x_homeassistant_matching_domains == {"mock-domain"} assert mock_call_data.upnp == {ssdp.ATTR_UPNP_UDN: "uuid:mock-udn"} assert "Failed to fetch ssdp data" not in caplog.text - # Compatibility with old dict access (to be removed after 2022.6) - assert mock_call_data[ssdp.ATTR_SSDP_ST] == "mock-st" - assert mock_call_data[ssdp.ATTR_SSDP_LOCATION] == "http://1.1.1.1" - assert mock_call_data[ssdp.ATTR_SSDP_USN] == "uuid:mock-udn::mock-st" - assert mock_call_data[ssdp.ATTR_SSDP_SERVER] == "mock-server" - assert mock_call_data[ssdp.ATTR_SSDP_EXT] == "" - assert mock_call_data[ssdp.ATTR_UPNP_UDN] == "uuid:mock-udn" - assert mock_call_data[ssdp.ATTR_SSDP_UDN] == ANY - assert mock_call_data["_timestamp"] == ANY - assert mock_call_data[ssdp.ATTR_HA_MATCHING_DOMAINS] == {"mock-domain"} - # End compatibility checks @pytest.mark.usefixtures("mock_get_source_ip") @@ -426,18 +404,6 @@ async def test_discovery_from_advertisement_sets_ssdp_st( ssdp.ATTR_UPNP_DEVICE_TYPE: "Paulus", ssdp.ATTR_UPNP_UDN: "uuid:mock-udn", } - # Compatibility with old dict access (to be removed after 2022.6) - assert discovery_info[ssdp.ATTR_SSDP_LOCATION] == "http://1.1.1.1" - assert discovery_info[ssdp.ATTR_SSDP_NT] == "mock-st" - # Set by ssdp component, not in original advertisement. - assert discovery_info[ssdp.ATTR_SSDP_ST] == "mock-st" - assert discovery_info[ssdp.ATTR_SSDP_USN] == "uuid:mock-udn::mock-st" - assert discovery_info[ssdp.ATTR_UPNP_UDN] == "uuid:mock-udn" - assert discovery_info[ssdp.ATTR_UPNP_DEVICE_TYPE] == "Paulus" - assert discovery_info[ssdp.ATTR_SSDP_UDN] == ANY - assert discovery_info["nts"] == "ssdp:alive" - assert discovery_info["_timestamp"] == ANY - # End compatibility checks @patch( @@ -547,25 +513,6 @@ async def test_scan_with_registered_callback( ssdp.ATTR_UPNP_DEVICE_TYPE: "Paulus", ssdp.ATTR_UPNP_UDN: "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL", } - # Compatibility with old dict access (to be removed after 2022.6) - assert mock_call_data[ssdp.ATTR_UPNP_DEVICE_TYPE] == "Paulus" - assert mock_call_data[ssdp.ATTR_SSDP_EXT] == "" - assert mock_call_data[ssdp.ATTR_SSDP_LOCATION] == "http://1.1.1.1" - assert mock_call_data[ssdp.ATTR_SSDP_SERVER] == "mock-server" - assert mock_call_data[ssdp.ATTR_SSDP_ST] == "mock-st" - assert ( - mock_call_data[ssdp.ATTR_SSDP_USN] - == "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL::mock-st" - ) - assert ( - mock_call_data[ssdp.ATTR_UPNP_UDN] - == "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL" - ) - assert mock_call_data["x-rincon-bootseq"] == "55" - assert mock_call_data[ssdp.ATTR_SSDP_UDN] == ANY - assert mock_call_data["_timestamp"] == ANY - assert mock_call_data[ssdp.ATTR_HA_MATCHING_DOMAINS] == set() - # End of compatibility checks assert "Failed to callback info" in caplog.text async_integration_callback_from_cache = AsyncMock() @@ -622,23 +569,6 @@ async def test_getting_existing_headers( ssdp.ATTR_UPNP_DEVICE_TYPE: "Paulus", ssdp.ATTR_UPNP_UDN: "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL", } - # Compatibility with old dict access (to be removed after 2022.6) - assert discovery_info_by_st[ssdp.ATTR_SSDP_EXT] == "" - assert discovery_info_by_st[ssdp.ATTR_SSDP_LOCATION] == "http://1.1.1.1" - assert discovery_info_by_st[ssdp.ATTR_SSDP_SERVER] == "mock-server" - assert discovery_info_by_st[ssdp.ATTR_SSDP_ST] == "mock-st" - assert ( - discovery_info_by_st[ssdp.ATTR_SSDP_USN] - == "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL::urn:mdx-netflix-com:service:target:3" - ) - assert ( - discovery_info_by_st[ssdp.ATTR_UPNP_UDN] - == "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL" - ) - assert discovery_info_by_st[ssdp.ATTR_UPNP_DEVICE_TYPE] == "Paulus" - assert discovery_info_by_st[ssdp.ATTR_SSDP_UDN] == ANY - assert discovery_info_by_st["_timestamp"] == ANY - # End of compatibility checks discovery_info_by_udn = await ssdp.async_get_discovery_info_by_udn( hass, "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL" @@ -658,23 +588,6 @@ async def test_getting_existing_headers( ssdp.ATTR_UPNP_DEVICE_TYPE: "Paulus", ssdp.ATTR_UPNP_UDN: "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL", } - # Compatibility with old dict access (to be removed after 2022.6) - assert discovery_info_by_udn[ssdp.ATTR_SSDP_EXT] == "" - assert discovery_info_by_udn[ssdp.ATTR_SSDP_LOCATION] == "http://1.1.1.1" - assert discovery_info_by_udn[ssdp.ATTR_SSDP_SERVER] == "mock-server" - assert discovery_info_by_udn[ssdp.ATTR_SSDP_ST] == "mock-st" - assert ( - discovery_info_by_udn[ssdp.ATTR_SSDP_USN] - == "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL::urn:mdx-netflix-com:service:target:3" - ) - assert ( - discovery_info_by_udn[ssdp.ATTR_UPNP_UDN] - == "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL" - ) - assert discovery_info_by_udn[ssdp.ATTR_UPNP_DEVICE_TYPE] == "Paulus" - assert discovery_info_by_udn[ssdp.ATTR_SSDP_UDN] == ANY - assert discovery_info_by_udn["_timestamp"] == ANY - # End of compatibility checks discovery_info_by_udn_st = await ssdp.async_get_discovery_info_by_udn_st( hass, "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL", "mock-st" @@ -693,23 +606,6 @@ async def test_getting_existing_headers( ssdp.ATTR_UPNP_DEVICE_TYPE: "Paulus", ssdp.ATTR_UPNP_UDN: "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL", } - # Compatibility with old dict access (to be removed after 2022.6) - assert discovery_info_by_udn_st[ssdp.ATTR_SSDP_EXT] == "" - assert discovery_info_by_udn_st[ssdp.ATTR_SSDP_LOCATION] == "http://1.1.1.1" - assert discovery_info_by_udn_st[ssdp.ATTR_SSDP_SERVER] == "mock-server" - assert discovery_info_by_udn_st[ssdp.ATTR_SSDP_ST] == "mock-st" - assert ( - discovery_info_by_udn_st[ssdp.ATTR_SSDP_USN] - == "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL::urn:mdx-netflix-com:service:target:3" - ) - assert ( - discovery_info_by_udn_st[ssdp.ATTR_UPNP_UDN] - == "uuid:TIVRTLSR7ANF-D6E-1557809135086-RETAIL" - ) - assert discovery_info_by_udn_st[ssdp.ATTR_UPNP_DEVICE_TYPE] == "Paulus" - assert discovery_info_by_udn_st[ssdp.ATTR_SSDP_UDN] == ANY - assert discovery_info_by_udn_st["_timestamp"] == ANY - # End of compatibility checks assert ( await ssdp.async_get_discovery_info_by_udn_st(hass, "wrong", "mock-st") is None @@ -845,61 +741,3 @@ async def test_ipv4_does_additional_search_for_sonos( ), ) assert ssdp_listener.async_search.call_args[1] == {} - - -@pytest.mark.usefixtures("mock_integration_frame") -async def test_service_info_compatibility(hass, caplog): - """Test compatibility with old-style dict. - - To be removed in 2022.6 - """ - discovery_info = ssdp.SsdpServiceInfo( - ssdp_st="mock-st", - ssdp_location="http://1.1.1.1", - ssdp_usn="uuid:mock-udn::mock-st", - ssdp_server="mock-server", - ssdp_ext="", - ssdp_headers=_ssdp_headers( - { - "st": "mock-st", - "location": "http://1.1.1.1", - "usn": "uuid:mock-udn::mock-st", - "server": "mock-server", - "ext": "", - } - ), - upnp={ssdp.ATTR_UPNP_DEVICE_TYPE: "ABC"}, - ) - - with patch("homeassistant.helpers.frame._REPORTED_INTEGRATIONS", set()): - assert discovery_info["ssdp_st"] == "mock-st" - assert "Detected integration that accessed discovery_info['ssdp_st']" in caplog.text - - with patch("homeassistant.helpers.frame._REPORTED_INTEGRATIONS", set()): - assert discovery_info.get("ssdp_location") == "http://1.1.1.1" - assert ( - "Detected integration that accessed discovery_info.get('ssdp_location')" - in caplog.text - ) - - with patch("homeassistant.helpers.frame._REPORTED_INTEGRATIONS", set()): - assert "ssdp_usn" in discovery_info - assert ( - "Detected integration that accessed discovery_info.__contains__('ssdp_usn')" - in caplog.text - ) - - # Root item - assert discovery_info["ssdp_usn"] == "uuid:mock-udn::mock-st" - assert discovery_info.get("ssdp_usn") == "uuid:mock-udn::mock-st" - assert "ssdp_usn" in discovery_info - - # SSDP header - assert discovery_info["st"] == "mock-st" - assert discovery_info.get("st") == "mock-st" - assert "st" in discovery_info - - # UPnP item - assert discovery_info[ssdp.ATTR_UPNP_DEVICE_TYPE] == "ABC" - assert discovery_info.get(ssdp.ATTR_UPNP_DEVICE_TYPE) == "ABC" - assert ssdp.ATTR_UPNP_DEVICE_TYPE in discovery_info diff --git a/tests/components/usb/test_init.py b/tests/components/usb/test_init.py index f1cf67bfb78..f4245a0e0d6 100644 --- a/tests/components/usb/test_init.py +++ b/tests/components/usb/test_init.py @@ -833,24 +833,3 @@ def test_human_readable_device_name(): assert "Silicon Labs" in name assert "10C4" in name assert "8A2A" in name - - -@pytest.mark.usefixtures("mock_integration_frame") -async def test_service_info_compatibility(hass, caplog): - """Test compatibility with old-style dict. - - To be removed in 2022.6 - """ - discovery_info = usb.UsbServiceInfo( - device=slae_sh_device.device, - vid=12345, - pid=12345, - serial_number=slae_sh_device.serial_number, - manufacturer=slae_sh_device.manufacturer, - description=slae_sh_device.description, - ) - - # Ensure first call get logged - with patch("homeassistant.helpers.frame._REPORTED_INTEGRATIONS", set()): - assert discovery_info["vid"] == 12345 - assert "Detected integration that accessed discovery_info['vid']" in caplog.text diff --git a/tests/components/zeroconf/test_init.py b/tests/components/zeroconf/test_init.py index 900dbeb8431..88dceb9d464 100644 --- a/tests/components/zeroconf/test_init.py +++ b/tests/components/zeroconf/test_init.py @@ -3,7 +3,6 @@ from ipaddress import ip_address from typing import Any from unittest.mock import call, patch -import pytest from zeroconf import InterfaceChoice, IPVersion, ServiceStateChange from zeroconf.asyncio import AsyncServiceInfo @@ -1116,33 +1115,3 @@ async def test_no_name(hass, mock_async_zeroconf): register_call = mock_async_zeroconf.async_register_service.mock_calls[-1] info = register_call.args[0] assert info.name == "Home._home-assistant._tcp.local." - - -@pytest.mark.usefixtures("mock_integration_frame") -async def test_service_info_compatibility(hass, caplog): - """Test compatibility with old-style dict. - - To be removed in 2022.6 - """ - discovery_info = zeroconf.ZeroconfServiceInfo( - host="mock_host", - addresses=["mock_host"], - port=None, - hostname="mock_hostname", - type="mock_type", - name="mock_name", - properties={}, - ) - - with patch("homeassistant.helpers.frame._REPORTED_INTEGRATIONS", set()): - assert discovery_info["host"] == "mock_host" - assert "Detected integration that accessed discovery_info['host']" in caplog.text - - with patch("homeassistant.helpers.frame._REPORTED_INTEGRATIONS", set()): - assert discovery_info.get("host") == "mock_host" - assert ( - "Detected integration that accessed discovery_info.get('host')" in caplog.text - ) - - assert discovery_info.get("host", "fallback_host") == "mock_host" - assert discovery_info.get("invalid_key", "fallback_host") == "fallback_host"