Replace additional deprecated USBServiceInfo imports (#135953)

This commit is contained in:
Marc Mueller 2025-01-19 00:43:07 +01:00 committed by GitHub
parent 09ae388f4e
commit 8a3ef101e6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
9 changed files with 37 additions and 32 deletions

View File

@ -4,17 +4,17 @@ from __future__ import annotations
import logging import logging
from homeassistant.components import usb
from homeassistant.config_entries import ConfigEntry from homeassistant.config_entries import ConfigEntry
from homeassistant.helpers.service_info.usb import UsbServiceInfo
from .const import HardwareVariant from .const import HardwareVariant
_LOGGER = logging.getLogger(__name__) _LOGGER = logging.getLogger(__name__)
def get_usb_service_info(config_entry: ConfigEntry) -> usb.UsbServiceInfo: def get_usb_service_info(config_entry: ConfigEntry) -> UsbServiceInfo:
"""Return UsbServiceInfo.""" """Return UsbServiceInfo."""
return usb.UsbServiceInfo( return UsbServiceInfo(
device=config_entry.data["device"], device=config_entry.data["device"],
vid=config_entry.data["vid"], vid=config_entry.data["vid"],
pid=config_entry.data["pid"], pid=config_entry.data["pid"],

View File

@ -29,6 +29,7 @@ from zigpy.exceptions import NetworkNotFormed
from homeassistant import config_entries from homeassistant import config_entries
from homeassistant.components import usb from homeassistant.components import usb
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.helpers.service_info.usb import UsbServiceInfo
from . import repairs from . import repairs
from .const import ( from .const import (
@ -86,7 +87,7 @@ HARDWARE_MIGRATION_SCHEMA = vol.Schema(
vol.Required("old_discovery_info"): vol.Schema( vol.Required("old_discovery_info"): vol.Schema(
{ {
vol.Exclusive("hw", "discovery"): HARDWARE_DISCOVERY_SCHEMA, vol.Exclusive("hw", "discovery"): HARDWARE_DISCOVERY_SCHEMA,
vol.Exclusive("usb", "discovery"): usb.UsbServiceInfo, vol.Exclusive("usb", "discovery"): UsbServiceInfo,
} }
), ),
} }

View File

@ -4,7 +4,6 @@ from unittest.mock import Mock, patch
import pytest import pytest
from homeassistant.components import usb
from homeassistant.components.hassio import AddonInfo, AddonState from homeassistant.components.hassio import AddonInfo, AddonState
from homeassistant.components.homeassistant_hardware.firmware_config_flow import ( from homeassistant.components.homeassistant_hardware.firmware_config_flow import (
STEP_PICK_FIRMWARE_ZIGBEE, STEP_PICK_FIRMWARE_ZIGBEE,
@ -17,10 +16,11 @@ from homeassistant.components.homeassistant_hardware.silabs_multiprotocol_addon
from homeassistant.components.homeassistant_sky_connect.const import DOMAIN from homeassistant.components.homeassistant_sky_connect.const import DOMAIN
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.data_entry_flow import FlowResultType from homeassistant.data_entry_flow import FlowResultType
from homeassistant.helpers.service_info.usb import UsbServiceInfo
from tests.common import MockConfigEntry from tests.common import MockConfigEntry
USB_DATA_SKY = usb.UsbServiceInfo( USB_DATA_SKY = UsbServiceInfo(
device="/dev/serial/by-id/usb-Nabu_Casa_SkyConnect_v1.0_9e2adbd75b8beb119fe564a0f320645d-if00-port0", device="/dev/serial/by-id/usb-Nabu_Casa_SkyConnect_v1.0_9e2adbd75b8beb119fe564a0f320645d-if00-port0",
vid="10C4", vid="10C4",
pid="EA60", pid="EA60",
@ -29,7 +29,7 @@ USB_DATA_SKY = usb.UsbServiceInfo(
description="SkyConnect v1.0", description="SkyConnect v1.0",
) )
USB_DATA_ZBT1 = usb.UsbServiceInfo( USB_DATA_ZBT1 = UsbServiceInfo(
device="/dev/serial/by-id/usb-Nabu_Casa_Home_Assistant_Connect_ZBT-1_9e2adbd75b8beb119fe564a0f320645d-if00-port0", device="/dev/serial/by-id/usb-Nabu_Casa_Home_Assistant_Connect_ZBT-1_9e2adbd75b8beb119fe564a0f320645d-if00-port0",
vid="10C4", vid="10C4",
pid="EA60", pid="EA60",
@ -47,7 +47,7 @@ USB_DATA_ZBT1 = usb.UsbServiceInfo(
], ],
) )
async def test_config_flow( async def test_config_flow(
usb_data: usb.UsbServiceInfo, model: str, hass: HomeAssistant usb_data: UsbServiceInfo, model: str, hass: HomeAssistant
) -> None: ) -> None:
"""Test the config flow for SkyConnect.""" """Test the config flow for SkyConnect."""
result = await hass.config_entries.flow.async_init( result = await hass.config_entries.flow.async_init(
@ -102,7 +102,7 @@ async def test_config_flow(
], ],
) )
async def test_options_flow( async def test_options_flow(
usb_data: usb.UsbServiceInfo, model: str, hass: HomeAssistant usb_data: UsbServiceInfo, model: str, hass: HomeAssistant
) -> None: ) -> None:
"""Test the options flow for SkyConnect.""" """Test the options flow for SkyConnect."""
config_entry = MockConfigEntry( config_entry = MockConfigEntry(
@ -168,7 +168,7 @@ async def test_options_flow(
], ],
) )
async def test_options_flow_multipan_uninstall( async def test_options_flow_multipan_uninstall(
usb_data: usb.UsbServiceInfo, model: str, hass: HomeAssistant usb_data: UsbServiceInfo, model: str, hass: HomeAssistant
) -> None: ) -> None:
"""Test options flow for when multi-PAN firmware is installed.""" """Test options flow for when multi-PAN firmware is installed."""
config_entry = MockConfigEntry( config_entry = MockConfigEntry(

View File

@ -8,7 +8,7 @@ import pytest
from voluptuous_serialize import convert from voluptuous_serialize import convert
from homeassistant import config_entries from homeassistant import config_entries
from homeassistant.components import dhcp, usb from homeassistant.components import dhcp
from homeassistant.components.insteon.config_flow import ( from homeassistant.components.insteon.config_flow import (
STEP_HUB_V1, STEP_HUB_V1,
STEP_HUB_V2, STEP_HUB_V2,
@ -20,6 +20,7 @@ from homeassistant.config_entries import ConfigEntryState, ConfigFlowResult
from homeassistant.const import CONF_DEVICE, CONF_HOST from homeassistant.const import CONF_DEVICE, CONF_HOST
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.data_entry_flow import FlowResultType from homeassistant.data_entry_flow import FlowResultType
from homeassistant.helpers.service_info.usb import UsbServiceInfo
from .const import ( from .const import (
MOCK_DEVICE, MOCK_DEVICE,
@ -270,7 +271,7 @@ async def test_failed_connection_hub(hass: HomeAssistant) -> None:
async def test_discovery_via_usb(hass: HomeAssistant) -> None: async def test_discovery_via_usb(hass: HomeAssistant) -> None:
"""Test usb flow.""" """Test usb flow."""
discovery_info = usb.UsbServiceInfo( discovery_info = UsbServiceInfo(
device="/dev/ttyINSTEON", device="/dev/ttyINSTEON",
pid="AAAA", pid="AAAA",
vid="AAAA", vid="AAAA",
@ -302,7 +303,7 @@ async def test_discovery_via_usb_already_setup(hass: HomeAssistant) -> None:
domain=DOMAIN, data={CONF_DEVICE: {CONF_DEVICE: "/dev/ttyUSB1"}} domain=DOMAIN, data={CONF_DEVICE: {CONF_DEVICE: "/dev/ttyUSB1"}}
).add_to_hass(hass) ).add_to_hass(hass)
discovery_info = usb.UsbServiceInfo( discovery_info = UsbServiceInfo(
device="/dev/ttyINSTEON", device="/dev/ttyINSTEON",
pid="AAAA", pid="AAAA",
vid="AAAA", vid="AAAA",

View File

@ -10,10 +10,11 @@ from homeassistant.config_entries import SOURCE_USB, SOURCE_USER
from homeassistant.const import CONF_DEVICE, CONF_SOURCE from homeassistant.const import CONF_DEVICE, CONF_SOURCE
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.data_entry_flow import FlowResultType from homeassistant.data_entry_flow import FlowResultType
from homeassistant.helpers.service_info.usb import UsbServiceInfo
from . import com_port, patch_config_flow_modem from . import com_port, patch_config_flow_modem
DISCOVERY_INFO = usb.UsbServiceInfo( DISCOVERY_INFO = UsbServiceInfo(
device=phone_modem.DEFAULT_PORT, device=phone_modem.DEFAULT_PORT,
pid="1340", pid="1340",
vid="0572", vid="0572",

View File

@ -13,8 +13,9 @@ from aioraven.data import (
from iso4217 import Currency from iso4217 import Currency
from homeassistant.components import usb from homeassistant.components import usb
from homeassistant.helpers.service_info.usb import UsbServiceInfo
DISCOVERY_INFO = usb.UsbServiceInfo( DISCOVERY_INFO = UsbServiceInfo(
device="/dev/ttyACM0", device="/dev/ttyACM0",
pid="0x0003", pid="0x0003",
vid="0x04B4", vid="0x04B4",

View File

@ -7,18 +7,18 @@ import pytest
import serial.tools.list_ports import serial.tools.list_ports
from velbusaio.exceptions import VelbusConnectionFailed from velbusaio.exceptions import VelbusConnectionFailed
from homeassistant.components import usb
from homeassistant.components.velbus.const import DOMAIN from homeassistant.components.velbus.const import DOMAIN
from homeassistant.config_entries import SOURCE_USB, SOURCE_USER from homeassistant.config_entries import SOURCE_USB, SOURCE_USER
from homeassistant.const import CONF_NAME, CONF_PORT, CONF_SOURCE from homeassistant.const import CONF_NAME, CONF_PORT, CONF_SOURCE
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.data_entry_flow import FlowResultType from homeassistant.data_entry_flow import FlowResultType
from homeassistant.helpers.service_info.usb import UsbServiceInfo
from .const import PORT_SERIAL, PORT_TCP from .const import PORT_SERIAL, PORT_TCP
from tests.common import MockConfigEntry from tests.common import MockConfigEntry
DISCOVERY_INFO = usb.UsbServiceInfo( DISCOVERY_INFO = UsbServiceInfo(
device=PORT_SERIAL, device=PORT_SERIAL,
pid="10CF", pid="10CF",
vid="0B1B", vid="0B1B",

View File

@ -20,7 +20,7 @@ from zigpy.exceptions import NetworkNotFormed
import zigpy.types import zigpy.types
from homeassistant import config_entries from homeassistant import config_entries
from homeassistant.components import ssdp, usb, zeroconf from homeassistant.components import ssdp, zeroconf
from homeassistant.components.hassio import AddonError, AddonState from homeassistant.components.hassio import AddonError, AddonState
from homeassistant.components.zha import config_flow, radio_manager from homeassistant.components.zha import config_flow, radio_manager
from homeassistant.components.zha.const import ( from homeassistant.components.zha.const import (
@ -46,6 +46,7 @@ from homeassistant.helpers.service_info.ssdp import (
ATTR_UPNP_MANUFACTURER_URL, ATTR_UPNP_MANUFACTURER_URL,
ATTR_UPNP_SERIAL, ATTR_UPNP_SERIAL,
) )
from homeassistant.helpers.service_info.usb import UsbServiceInfo
from tests.common import MockConfigEntry from tests.common import MockConfigEntry
@ -432,7 +433,7 @@ async def test_legacy_zeroconf_discovery_confirm_final_abort_if_entries(
@patch(f"zigpy_znp.{PROBE_FUNCTION_PATH}", AsyncMock(return_value=True)) @patch(f"zigpy_znp.{PROBE_FUNCTION_PATH}", AsyncMock(return_value=True))
async def test_discovery_via_usb(hass: HomeAssistant) -> None: async def test_discovery_via_usb(hass: HomeAssistant) -> None:
"""Test usb flow -- radio detected.""" """Test usb flow -- radio detected."""
discovery_info = usb.UsbServiceInfo( discovery_info = UsbServiceInfo(
device="/dev/ttyZIGBEE", device="/dev/ttyZIGBEE",
pid="AAAA", pid="AAAA",
vid="AAAA", vid="AAAA",
@ -478,7 +479,7 @@ async def test_discovery_via_usb(hass: HomeAssistant) -> None:
@patch(f"zigpy_zigate.{PROBE_FUNCTION_PATH}", return_value=True) @patch(f"zigpy_zigate.{PROBE_FUNCTION_PATH}", return_value=True)
async def test_zigate_discovery_via_usb(probe_mock, hass: HomeAssistant) -> None: async def test_zigate_discovery_via_usb(probe_mock, hass: HomeAssistant) -> None:
"""Test zigate usb flow -- radio detected.""" """Test zigate usb flow -- radio detected."""
discovery_info = usb.UsbServiceInfo( discovery_info = UsbServiceInfo(
device="/dev/ttyZIGBEE", device="/dev/ttyZIGBEE",
pid="0403", pid="0403",
vid="6015", vid="6015",
@ -531,7 +532,7 @@ async def test_zigate_discovery_via_usb(probe_mock, hass: HomeAssistant) -> None
) )
async def test_discovery_via_usb_no_radio(hass: HomeAssistant) -> None: async def test_discovery_via_usb_no_radio(hass: HomeAssistant) -> None:
"""Test usb flow -- no radio detected.""" """Test usb flow -- no radio detected."""
discovery_info = usb.UsbServiceInfo( discovery_info = UsbServiceInfo(
device="/dev/null", device="/dev/null",
pid="AAAA", pid="AAAA",
vid="AAAA", vid="AAAA",
@ -564,7 +565,7 @@ async def test_discovery_via_usb_already_setup(hass: HomeAssistant) -> None:
domain=DOMAIN, data={CONF_DEVICE: {CONF_DEVICE_PATH: "/dev/ttyUSB1"}} domain=DOMAIN, data={CONF_DEVICE: {CONF_DEVICE_PATH: "/dev/ttyUSB1"}}
).add_to_hass(hass) ).add_to_hass(hass)
discovery_info = usb.UsbServiceInfo( discovery_info = UsbServiceInfo(
device="/dev/ttyZIGBEE", device="/dev/ttyZIGBEE",
pid="AAAA", pid="AAAA",
vid="AAAA", vid="AAAA",
@ -598,7 +599,7 @@ async def test_discovery_via_usb_path_does_not_change(hass: HomeAssistant) -> No
) )
entry.add_to_hass(hass) entry.add_to_hass(hass)
discovery_info = usb.UsbServiceInfo( discovery_info = UsbServiceInfo(
device="/dev/ttyZIGBEE", device="/dev/ttyZIGBEE",
pid="AAAA", pid="AAAA",
vid="AAAA", vid="AAAA",
@ -637,7 +638,7 @@ async def test_discovery_via_usb_deconz_already_discovered(hass: HomeAssistant)
context={"source": SOURCE_SSDP}, context={"source": SOURCE_SSDP},
) )
await hass.async_block_till_done() await hass.async_block_till_done()
discovery_info = usb.UsbServiceInfo( discovery_info = UsbServiceInfo(
device="/dev/ttyZIGBEE", device="/dev/ttyZIGBEE",
pid="AAAA", pid="AAAA",
vid="AAAA", vid="AAAA",
@ -659,7 +660,7 @@ async def test_discovery_via_usb_deconz_already_setup(hass: HomeAssistant) -> No
"""Test usb flow -- deconz setup.""" """Test usb flow -- deconz setup."""
MockConfigEntry(domain="deconz", data={}).add_to_hass(hass) MockConfigEntry(domain="deconz", data={}).add_to_hass(hass)
await hass.async_block_till_done() await hass.async_block_till_done()
discovery_info = usb.UsbServiceInfo( discovery_info = UsbServiceInfo(
device="/dev/ttyZIGBEE", device="/dev/ttyZIGBEE",
pid="AAAA", pid="AAAA",
vid="AAAA", vid="AAAA",
@ -683,7 +684,7 @@ async def test_discovery_via_usb_deconz_ignored(hass: HomeAssistant) -> None:
domain="deconz", source=config_entries.SOURCE_IGNORE, data={} domain="deconz", source=config_entries.SOURCE_IGNORE, data={}
).add_to_hass(hass) ).add_to_hass(hass)
await hass.async_block_till_done() await hass.async_block_till_done()
discovery_info = usb.UsbServiceInfo( discovery_info = UsbServiceInfo(
device="/dev/ttyZIGBEE", device="/dev/ttyZIGBEE",
pid="AAAA", pid="AAAA",
vid="AAAA", vid="AAAA",
@ -711,7 +712,7 @@ async def test_discovery_via_usb_zha_ignored_updates(hass: HomeAssistant) -> Non
) )
entry.add_to_hass(hass) entry.add_to_hass(hass)
await hass.async_block_till_done() await hass.async_block_till_done()
discovery_info = usb.UsbServiceInfo( discovery_info = UsbServiceInfo(
device="/dev/ttyZIGBEE", device="/dev/ttyZIGBEE",
pid="AAAA", pid="AAAA",
vid="AAAA", vid="AAAA",
@ -1199,7 +1200,7 @@ async def test_onboarding_auto_formation_new_hardware(
"""Test auto network formation with new hardware during onboarding.""" """Test auto network formation with new hardware during onboarding."""
mock_app.load_network_info = AsyncMock(side_effect=NetworkNotFormed()) mock_app.load_network_info = AsyncMock(side_effect=NetworkNotFormed())
mock_app.get_device = MagicMock(return_value=MagicMock(spec=zigpy.device.Device)) mock_app.get_device = MagicMock(return_value=MagicMock(spec=zigpy.device.Device))
discovery_info = usb.UsbServiceInfo( discovery_info = UsbServiceInfo(
device="/dev/ttyZIGBEE", device="/dev/ttyZIGBEE",
pid="AAAA", pid="AAAA",
vid="AAAA", vid="AAAA",

View File

@ -16,12 +16,12 @@ from serial.tools.list_ports_common import ListPortInfo
from zwave_js_server.version import VersionInfo from zwave_js_server.version import VersionInfo
from homeassistant import config_entries from homeassistant import config_entries
from homeassistant.components import usb
from homeassistant.components.zwave_js.config_flow import SERVER_VERSION_TIMEOUT, TITLE from homeassistant.components.zwave_js.config_flow import SERVER_VERSION_TIMEOUT, TITLE
from homeassistant.components.zwave_js.const import ADDON_SLUG, DOMAIN from homeassistant.components.zwave_js.const import ADDON_SLUG, DOMAIN
from homeassistant.core import HomeAssistant from homeassistant.core import HomeAssistant
from homeassistant.data_entry_flow import FlowResultType from homeassistant.data_entry_flow import FlowResultType
from homeassistant.helpers.service_info.hassio import HassioServiceInfo from homeassistant.helpers.service_info.hassio import HassioServiceInfo
from homeassistant.helpers.service_info.usb import UsbServiceInfo
from homeassistant.helpers.service_info.zeroconf import ZeroconfServiceInfo from homeassistant.helpers.service_info.zeroconf import ZeroconfServiceInfo
from tests.common import MockConfigEntry from tests.common import MockConfigEntry
@ -33,7 +33,7 @@ ADDON_DISCOVERY_INFO = {
} }
USB_DISCOVERY_INFO = usb.UsbServiceInfo( USB_DISCOVERY_INFO = UsbServiceInfo(
device="/dev/zwave", device="/dev/zwave",
pid="AAAA", pid="AAAA",
vid="AAAA", vid="AAAA",
@ -42,7 +42,7 @@ USB_DISCOVERY_INFO = usb.UsbServiceInfo(
manufacturer="test", manufacturer="test",
) )
NORTEK_ZIGBEE_DISCOVERY_INFO = usb.UsbServiceInfo( NORTEK_ZIGBEE_DISCOVERY_INFO = UsbServiceInfo(
device="/dev/zigbee", device="/dev/zigbee",
pid="8A2A", pid="8A2A",
vid="10C4", vid="10C4",
@ -51,7 +51,7 @@ NORTEK_ZIGBEE_DISCOVERY_INFO = usb.UsbServiceInfo(
manufacturer="nortek", manufacturer="nortek",
) )
CP2652_ZIGBEE_DISCOVERY_INFO = usb.UsbServiceInfo( CP2652_ZIGBEE_DISCOVERY_INFO = UsbServiceInfo(
device="/dev/zigbee", device="/dev/zigbee",
pid="EA60", pid="EA60",
vid="10C4", vid="10C4",