Fix charging error in Roomba integration (#49416)
This commit is contained in:
parent
0072923fbe
commit
33d4d545a7
6 changed files with 18 additions and 19 deletions
|
@ -3,7 +3,7 @@ import asyncio
|
|||
import logging
|
||||
|
||||
import async_timeout
|
||||
from roombapy import Roomba, RoombaConnectionError
|
||||
from roombapy import RoombaConnectionError, RoombaFactory
|
||||
|
||||
from homeassistant import exceptions
|
||||
from homeassistant.const import (
|
||||
|
@ -40,7 +40,7 @@ async def async_setup_entry(hass, config_entry):
|
|||
},
|
||||
)
|
||||
|
||||
roomba = Roomba(
|
||||
roomba = RoombaFactory.create_roomba(
|
||||
address=config_entry.data[CONF_HOST],
|
||||
blid=config_entry.data[CONF_BLID],
|
||||
password=config_entry.data[CONF_PASSWORD],
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
import asyncio
|
||||
|
||||
from roombapy import Roomba
|
||||
from roombapy import RoombaFactory
|
||||
from roombapy.discovery import RoombaDiscovery
|
||||
from roombapy.getpassword import RoombaPassword
|
||||
import voluptuous as vol
|
||||
|
@ -40,7 +40,7 @@ async def validate_input(hass: core.HomeAssistant, data):
|
|||
|
||||
Data has the keys from DATA_SCHEMA with values provided by the user.
|
||||
"""
|
||||
roomba = Roomba(
|
||||
roomba = RoombaFactory.create_roomba(
|
||||
address=data[CONF_HOST],
|
||||
blid=data[CONF_BLID],
|
||||
password=data[CONF_PASSWORD],
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
"name": "iRobot Roomba and Braava",
|
||||
"config_flow": true,
|
||||
"documentation": "https://www.home-assistant.io/integrations/roomba",
|
||||
"requirements": ["roombapy==1.6.2"],
|
||||
"requirements": ["roombapy==1.6.3"],
|
||||
"codeowners": ["@pschmitt", "@cyr-ius", "@shenxn"],
|
||||
"dhcp": [
|
||||
{
|
||||
|
|
|
@ -1991,7 +1991,7 @@ rocketchat-API==0.6.1
|
|||
rokuecp==0.8.1
|
||||
|
||||
# homeassistant.components.roomba
|
||||
roombapy==1.6.2
|
||||
roombapy==1.6.3
|
||||
|
||||
# homeassistant.components.roon
|
||||
roonapi==0.0.32
|
||||
|
|
|
@ -1058,7 +1058,7 @@ ring_doorbell==0.6.2
|
|||
rokuecp==0.8.1
|
||||
|
||||
# homeassistant.components.roomba
|
||||
roombapy==1.6.2
|
||||
roombapy==1.6.3
|
||||
|
||||
# homeassistant.components.roon
|
||||
roonapi==0.0.32
|
||||
|
|
|
@ -2,8 +2,7 @@
|
|||
from unittest.mock import MagicMock, PropertyMock, patch
|
||||
|
||||
import pytest
|
||||
from roombapy import RoombaConnectionError
|
||||
from roombapy.roomba import RoombaInfo
|
||||
from roombapy import RoombaConnectionError, RoombaInfo
|
||||
|
||||
from homeassistant import config_entries, data_entry_flow, setup
|
||||
from homeassistant.components.dhcp import HOSTNAME, IP_ADDRESS, MAC_ADDRESS
|
||||
|
@ -144,7 +143,7 @@ async def test_form_user_discovery_and_password_fetch(hass):
|
|||
assert result2["step_id"] == "link"
|
||||
|
||||
with patch(
|
||||
"homeassistant.components.roomba.config_flow.Roomba",
|
||||
"homeassistant.components.roomba.config_flow.RoombaFactory.create_roomba",
|
||||
return_value=mocked_roomba,
|
||||
), patch(
|
||||
"homeassistant.components.roomba.config_flow.RoombaPassword",
|
||||
|
@ -260,7 +259,7 @@ async def test_form_user_discovery_manual_and_auto_password_fetch(hass):
|
|||
assert result3["errors"] is None
|
||||
|
||||
with patch(
|
||||
"homeassistant.components.roomba.config_flow.Roomba",
|
||||
"homeassistant.components.roomba.config_flow.RoombaFactory.create_roomba",
|
||||
return_value=mocked_roomba,
|
||||
), patch(
|
||||
"homeassistant.components.roomba.config_flow.RoombaPassword",
|
||||
|
@ -359,7 +358,7 @@ async def test_form_user_discovery_manual_and_auto_password_fetch_but_cannot_con
|
|||
assert result3["errors"] is None
|
||||
|
||||
with patch(
|
||||
"homeassistant.components.roomba.config_flow.Roomba",
|
||||
"homeassistant.components.roomba.config_flow.RoombaFactory.create_roomba",
|
||||
return_value=mocked_roomba,
|
||||
), patch(
|
||||
"homeassistant.components.roomba.config_flow.RoombaPassword",
|
||||
|
@ -410,7 +409,7 @@ async def test_form_user_discovery_no_devices_found_and_auto_password_fetch(hass
|
|||
assert result2["errors"] is None
|
||||
|
||||
with patch(
|
||||
"homeassistant.components.roomba.config_flow.Roomba",
|
||||
"homeassistant.components.roomba.config_flow.RoombaFactory.create_roomba",
|
||||
return_value=mocked_roomba,
|
||||
), patch(
|
||||
"homeassistant.components.roomba.config_flow.RoombaPassword",
|
||||
|
@ -479,7 +478,7 @@ async def test_form_user_discovery_no_devices_found_and_password_fetch_fails(has
|
|||
await hass.async_block_till_done()
|
||||
|
||||
with patch(
|
||||
"homeassistant.components.roomba.config_flow.Roomba",
|
||||
"homeassistant.components.roomba.config_flow.RoombaFactory.create_roomba",
|
||||
return_value=mocked_roomba,
|
||||
), patch(
|
||||
"homeassistant.components.roomba.async_setup_entry",
|
||||
|
@ -548,7 +547,7 @@ async def test_form_user_discovery_not_devices_found_and_password_fetch_fails_an
|
|||
await hass.async_block_till_done()
|
||||
|
||||
with patch(
|
||||
"homeassistant.components.roomba.config_flow.Roomba",
|
||||
"homeassistant.components.roomba.config_flow.RoombaFactory.create_roomba",
|
||||
return_value=mocked_roomba,
|
||||
), patch(
|
||||
"homeassistant.components.roomba.async_setup_entry",
|
||||
|
@ -606,7 +605,7 @@ async def test_form_user_discovery_and_password_fetch_gets_connection_refused(ha
|
|||
await hass.async_block_till_done()
|
||||
|
||||
with patch(
|
||||
"homeassistant.components.roomba.config_flow.Roomba",
|
||||
"homeassistant.components.roomba.config_flow.RoombaFactory.create_roomba",
|
||||
return_value=mocked_roomba,
|
||||
), patch(
|
||||
"homeassistant.components.roomba.async_setup_entry",
|
||||
|
@ -657,7 +656,7 @@ async def test_dhcp_discovery_and_roomba_discovery_finds(hass, discovery_data):
|
|||
assert result["description_placeholders"] == {"name": "robot_name"}
|
||||
|
||||
with patch(
|
||||
"homeassistant.components.roomba.config_flow.Roomba",
|
||||
"homeassistant.components.roomba.config_flow.RoombaFactory.create_roomba",
|
||||
return_value=mocked_roomba,
|
||||
), patch(
|
||||
"homeassistant.components.roomba.config_flow.RoombaPassword",
|
||||
|
@ -727,7 +726,7 @@ async def test_dhcp_discovery_falls_back_to_manual(hass, discovery_data):
|
|||
assert result3["errors"] is None
|
||||
|
||||
with patch(
|
||||
"homeassistant.components.roomba.config_flow.Roomba",
|
||||
"homeassistant.components.roomba.config_flow.RoombaFactory.create_roomba",
|
||||
return_value=mocked_roomba,
|
||||
), patch(
|
||||
"homeassistant.components.roomba.config_flow.RoombaPassword",
|
||||
|
@ -789,7 +788,7 @@ async def test_dhcp_discovery_no_devices_falls_back_to_manual(hass, discovery_da
|
|||
assert result2["errors"] is None
|
||||
|
||||
with patch(
|
||||
"homeassistant.components.roomba.config_flow.Roomba",
|
||||
"homeassistant.components.roomba.config_flow.RoombaFactory.create_roomba",
|
||||
return_value=mocked_roomba,
|
||||
), patch(
|
||||
"homeassistant.components.roomba.config_flow.RoombaPassword",
|
||||
|
|
Loading…
Add table
Reference in a new issue