mirror of
https://github.com/home-assistant/core.git
synced 2025-07-23 05:07:41 +00:00
Add software version to onewire device info (#136934)
This commit is contained in:
parent
b12598d963
commit
acb3f4ed78
@ -58,6 +58,7 @@ class OneWireHub:
|
|||||||
|
|
||||||
owproxy: protocol._Proxy
|
owproxy: protocol._Proxy
|
||||||
devices: list[OWDeviceDescription]
|
devices: list[OWDeviceDescription]
|
||||||
|
_version: str
|
||||||
|
|
||||||
def __init__(self, hass: HomeAssistant, config_entry: OneWireConfigEntry) -> None:
|
def __init__(self, hass: HomeAssistant, config_entry: OneWireConfigEntry) -> None:
|
||||||
"""Initialize."""
|
"""Initialize."""
|
||||||
@ -73,6 +74,7 @@ class OneWireHub:
|
|||||||
port = self._config_entry.data[CONF_PORT]
|
port = self._config_entry.data[CONF_PORT]
|
||||||
_LOGGER.debug("Initializing connection to %s:%s", host, port)
|
_LOGGER.debug("Initializing connection to %s:%s", host, port)
|
||||||
self.owproxy = protocol.proxy(host, port)
|
self.owproxy = protocol.proxy(host, port)
|
||||||
|
self._version = self.owproxy.read(protocol.PTH_VERSION).decode()
|
||||||
self.devices = _discover_devices(self.owproxy)
|
self.devices = _discover_devices(self.owproxy)
|
||||||
|
|
||||||
async def initialize(self) -> None:
|
async def initialize(self) -> None:
|
||||||
@ -85,6 +87,7 @@ class OneWireHub:
|
|||||||
"""Populate the device registry."""
|
"""Populate the device registry."""
|
||||||
device_registry = dr.async_get(self._hass)
|
device_registry = dr.async_get(self._hass)
|
||||||
for device in devices:
|
for device in devices:
|
||||||
|
device.device_info["sw_version"] = self._version
|
||||||
device_registry.async_get_or_create(
|
device_registry.async_get_or_create(
|
||||||
config_entry_id=self._config_entry.entry_id,
|
config_entry_id=self._config_entry.entry_id,
|
||||||
**device.device_info,
|
**device.device_info,
|
||||||
|
@ -13,7 +13,9 @@ from .const import ATTR_INJECT_READS, MOCK_OWPROXY_DEVICES
|
|||||||
def setup_owproxy_mock_devices(owproxy: MagicMock, device_ids: list[str]) -> None:
|
def setup_owproxy_mock_devices(owproxy: MagicMock, device_ids: list[str]) -> None:
|
||||||
"""Set up mock for owproxy."""
|
"""Set up mock for owproxy."""
|
||||||
dir_side_effect: dict[str, list] = {}
|
dir_side_effect: dict[str, list] = {}
|
||||||
read_side_effect: dict[str, list] = {}
|
read_side_effect: dict[str, list] = {
|
||||||
|
"/system/configuration/version": [b"3.2"],
|
||||||
|
}
|
||||||
|
|
||||||
# Setup directory listing
|
# Setup directory listing
|
||||||
dir_side_effect["/"] = [[f"/{device_id}/" for device_id in device_ids]]
|
dir_side_effect["/"] = [[f"/{device_id}/" for device_id in device_ids]]
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
'model_id': 'HB_HUB',
|
'model_id': 'HB_HUB',
|
||||||
'name': 'EF.111111111113',
|
'name': 'EF.111111111113',
|
||||||
'serial_number': '111111111113',
|
'serial_number': '111111111113',
|
||||||
|
'sw_version': '3.2',
|
||||||
}),
|
}),
|
||||||
'family': 'EF',
|
'family': 'EF',
|
||||||
'id': 'EF.111111111113',
|
'id': 'EF.111111111113',
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -59,7 +59,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -91,7 +91,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -123,7 +123,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': <ANY>,
|
'via_device_id': <ANY>,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -155,7 +155,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -187,7 +187,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -219,7 +219,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -251,7 +251,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -283,7 +283,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -315,7 +315,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '222222222222',
|
'serial_number': '222222222222',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -347,7 +347,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '222222222223',
|
'serial_number': '222222222223',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -379,7 +379,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -411,7 +411,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -443,7 +443,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -475,7 +475,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -507,7 +507,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -539,7 +539,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -571,7 +571,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '222222222222',
|
'serial_number': '222222222222',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -603,7 +603,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -635,7 +635,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111111',
|
'serial_number': '111111111111',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -667,7 +667,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111112',
|
'serial_number': '111111111112',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
@ -699,7 +699,7 @@
|
|||||||
'primary_config_entry': <ANY>,
|
'primary_config_entry': <ANY>,
|
||||||
'serial_number': '111111111113',
|
'serial_number': '111111111113',
|
||||||
'suggested_area': None,
|
'suggested_area': None,
|
||||||
'sw_version': None,
|
'sw_version': '3.2',
|
||||||
'via_device_id': None,
|
'via_device_id': None,
|
||||||
})
|
})
|
||||||
# ---
|
# ---
|
||||||
|
Loading…
x
Reference in New Issue
Block a user