mirror of
https://github.com/home-assistant/core.git
synced 2025-08-01 09:38:21 +00:00
Update pytests
This commit is contained in:
parent
0e78002c4a
commit
b9c563538a
@ -142,6 +142,38 @@ def mock_all(
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
aioclient_mock.get(
|
||||||
|
"http://127.0.0.1/addons",
|
||||||
|
json={
|
||||||
|
"result": "ok",
|
||||||
|
"data": {
|
||||||
|
"addons": [
|
||||||
|
{
|
||||||
|
"name": "test",
|
||||||
|
"slug": "test",
|
||||||
|
"state": "started",
|
||||||
|
"update_available": True,
|
||||||
|
"icon": False,
|
||||||
|
"version": "2.0.0",
|
||||||
|
"version_latest": "2.0.1",
|
||||||
|
"repository": "core",
|
||||||
|
"url": "https://github.com/home-assistant/addons/test",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "test2",
|
||||||
|
"slug": "test2",
|
||||||
|
"state": "stopped",
|
||||||
|
"update_available": False,
|
||||||
|
"icon": True,
|
||||||
|
"version": "3.1.0",
|
||||||
|
"version_latest": "3.1.0",
|
||||||
|
"repository": "core",
|
||||||
|
"url": "https://github.com",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
)
|
||||||
aioclient_mock.get(
|
aioclient_mock.get(
|
||||||
"http://127.0.0.1/core/stats",
|
"http://127.0.0.1/core/stats",
|
||||||
json={
|
json={
|
||||||
@ -232,7 +264,7 @@ async def test_setup_api_ping(
|
|||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert result
|
assert result
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 18
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 19
|
||||||
assert get_core_info(hass)["version_latest"] == "1.0.0"
|
assert get_core_info(hass)["version_latest"] == "1.0.0"
|
||||||
assert is_hassio(hass)
|
assert is_hassio(hass)
|
||||||
|
|
||||||
@ -279,7 +311,7 @@ async def test_setup_api_push_api_data(
|
|||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert result
|
assert result
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 18
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 19
|
||||||
assert not aioclient_mock.mock_calls[0][2]["ssl"]
|
assert not aioclient_mock.mock_calls[0][2]["ssl"]
|
||||||
assert aioclient_mock.mock_calls[0][2]["port"] == 9999
|
assert aioclient_mock.mock_calls[0][2]["port"] == 9999
|
||||||
assert "watchdog" not in aioclient_mock.mock_calls[0][2]
|
assert "watchdog" not in aioclient_mock.mock_calls[0][2]
|
||||||
@ -300,7 +332,7 @@ async def test_setup_api_push_api_data_server_host(
|
|||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert result
|
assert result
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 18
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 19
|
||||||
assert not aioclient_mock.mock_calls[0][2]["ssl"]
|
assert not aioclient_mock.mock_calls[0][2]["ssl"]
|
||||||
assert aioclient_mock.mock_calls[0][2]["port"] == 9999
|
assert aioclient_mock.mock_calls[0][2]["port"] == 9999
|
||||||
assert not aioclient_mock.mock_calls[0][2]["watchdog"]
|
assert not aioclient_mock.mock_calls[0][2]["watchdog"]
|
||||||
@ -321,7 +353,7 @@ async def test_setup_api_push_api_data_default(
|
|||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert result
|
assert result
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 18
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 19
|
||||||
assert not aioclient_mock.mock_calls[0][2]["ssl"]
|
assert not aioclient_mock.mock_calls[0][2]["ssl"]
|
||||||
assert aioclient_mock.mock_calls[0][2]["port"] == 8123
|
assert aioclient_mock.mock_calls[0][2]["port"] == 8123
|
||||||
refresh_token = aioclient_mock.mock_calls[0][2]["refresh_token"]
|
refresh_token = aioclient_mock.mock_calls[0][2]["refresh_token"]
|
||||||
@ -402,7 +434,7 @@ async def test_setup_api_existing_hassio_user(
|
|||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert result
|
assert result
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 18
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 19
|
||||||
assert not aioclient_mock.mock_calls[0][2]["ssl"]
|
assert not aioclient_mock.mock_calls[0][2]["ssl"]
|
||||||
assert aioclient_mock.mock_calls[0][2]["port"] == 8123
|
assert aioclient_mock.mock_calls[0][2]["port"] == 8123
|
||||||
assert aioclient_mock.mock_calls[0][2]["refresh_token"] == token.token
|
assert aioclient_mock.mock_calls[0][2]["refresh_token"] == token.token
|
||||||
@ -421,7 +453,7 @@ async def test_setup_core_push_config(
|
|||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert result
|
assert result
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 18
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 19
|
||||||
assert aioclient_mock.mock_calls[1][2]["timezone"] == "testzone"
|
assert aioclient_mock.mock_calls[1][2]["timezone"] == "testzone"
|
||||||
|
|
||||||
with patch("homeassistant.util.dt.set_default_time_zone"):
|
with patch("homeassistant.util.dt.set_default_time_zone"):
|
||||||
@ -445,7 +477,7 @@ async def test_setup_hassio_no_additional_data(
|
|||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert result
|
assert result
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 18
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 19
|
||||||
assert aioclient_mock.mock_calls[-1][3]["Authorization"] == "Bearer 123456"
|
assert aioclient_mock.mock_calls[-1][3]["Authorization"] == "Bearer 123456"
|
||||||
|
|
||||||
|
|
||||||
@ -527,14 +559,14 @@ async def test_service_calls(
|
|||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 22
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 23
|
||||||
assert aioclient_mock.mock_calls[-1][2] == "test"
|
assert aioclient_mock.mock_calls[-1][2] == "test"
|
||||||
|
|
||||||
await hass.services.async_call("hassio", "host_shutdown", {})
|
await hass.services.async_call("hassio", "host_shutdown", {})
|
||||||
await hass.services.async_call("hassio", "host_reboot", {})
|
await hass.services.async_call("hassio", "host_reboot", {})
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 24
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 25
|
||||||
|
|
||||||
await hass.services.async_call("hassio", "backup_full", {})
|
await hass.services.async_call("hassio", "backup_full", {})
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
@ -549,7 +581,7 @@ async def test_service_calls(
|
|||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 26
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 27
|
||||||
assert aioclient_mock.mock_calls[-1][2] == {
|
assert aioclient_mock.mock_calls[-1][2] == {
|
||||||
"name": "2021-11-13 03:48:00",
|
"name": "2021-11-13 03:48:00",
|
||||||
"homeassistant": True,
|
"homeassistant": True,
|
||||||
@ -574,7 +606,7 @@ async def test_service_calls(
|
|||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 28
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 29
|
||||||
assert aioclient_mock.mock_calls[-1][2] == {
|
assert aioclient_mock.mock_calls[-1][2] == {
|
||||||
"addons": ["test"],
|
"addons": ["test"],
|
||||||
"folders": ["ssl"],
|
"folders": ["ssl"],
|
||||||
@ -593,7 +625,7 @@ async def test_service_calls(
|
|||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 29
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 30
|
||||||
assert aioclient_mock.mock_calls[-1][2] == {
|
assert aioclient_mock.mock_calls[-1][2] == {
|
||||||
"name": "backup_name",
|
"name": "backup_name",
|
||||||
"location": "backup_share",
|
"location": "backup_share",
|
||||||
@ -609,7 +641,7 @@ async def test_service_calls(
|
|||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 30
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 31
|
||||||
assert aioclient_mock.mock_calls[-1][2] == {
|
assert aioclient_mock.mock_calls[-1][2] == {
|
||||||
"name": "2021-11-13 03:48:00",
|
"name": "2021-11-13 03:48:00",
|
||||||
"location": None,
|
"location": None,
|
||||||
@ -628,7 +660,7 @@ async def test_service_calls(
|
|||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 32
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 33
|
||||||
assert aioclient_mock.mock_calls[-1][2] == {
|
assert aioclient_mock.mock_calls[-1][2] == {
|
||||||
"name": "2021-11-13 11:48:00",
|
"name": "2021-11-13 11:48:00",
|
||||||
"location": None,
|
"location": None,
|
||||||
@ -683,7 +715,7 @@ async def test_addon_service_call_with_complex_slug(
|
|||||||
with (
|
with (
|
||||||
patch.dict(os.environ, MOCK_ENVIRON),
|
patch.dict(os.environ, MOCK_ENVIRON),
|
||||||
patch(
|
patch(
|
||||||
"homeassistant.components.hassio.HassIO.get_supervisor_info",
|
"homeassistant.components.hassio.HassIO.get_addons",
|
||||||
return_value=supervisor_mock_data,
|
return_value=supervisor_mock_data,
|
||||||
),
|
),
|
||||||
):
|
):
|
||||||
@ -811,7 +843,7 @@ async def test_device_registry_calls(
|
|||||||
config_entry.add_to_hass(hass)
|
config_entry.add_to_hass(hass)
|
||||||
assert await hass.config_entries.async_setup(config_entry.entry_id)
|
assert await hass.config_entries.async_setup(config_entry.entry_id)
|
||||||
await hass.async_block_till_done(wait_background_tasks=True)
|
await hass.async_block_till_done(wait_background_tasks=True)
|
||||||
assert len(device_registry.devices) == 6
|
assert len(device_registry.devices) == 5
|
||||||
|
|
||||||
supervisor_mock_data = {
|
supervisor_mock_data = {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
@ -919,13 +951,13 @@ async def test_coordinator_updates(
|
|||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
# Initial refresh, no update refresh call
|
# Initial refresh, no update refresh call
|
||||||
supervisor_client.refresh_updates.assert_not_called()
|
supervisor_client.reload_updates.assert_not_called()
|
||||||
|
|
||||||
async_fire_time_changed(hass, dt_util.now() + timedelta(minutes=20))
|
async_fire_time_changed(hass, dt_util.now() + timedelta(minutes=20))
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
# Scheduled refresh, no update refresh call
|
# Scheduled refresh, no update refresh call
|
||||||
supervisor_client.refresh_updates.assert_not_called()
|
supervisor_client.reload_updates.assert_not_called()
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
"homeassistant",
|
"homeassistant",
|
||||||
@ -940,15 +972,15 @@ async def test_coordinator_updates(
|
|||||||
)
|
)
|
||||||
|
|
||||||
# There is a REQUEST_REFRESH_DELAYs cooldown on the debouncer
|
# There is a REQUEST_REFRESH_DELAYs cooldown on the debouncer
|
||||||
supervisor_client.refresh_updates.assert_not_called()
|
supervisor_client.reload_updates.assert_not_called()
|
||||||
async_fire_time_changed(
|
async_fire_time_changed(
|
||||||
hass, dt_util.now() + timedelta(seconds=REQUEST_REFRESH_DELAY)
|
hass, dt_util.now() + timedelta(seconds=REQUEST_REFRESH_DELAY)
|
||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
supervisor_client.refresh_updates.assert_called_once()
|
supervisor_client.reload_updates.assert_called_once()
|
||||||
|
|
||||||
supervisor_client.refresh_updates.reset_mock()
|
supervisor_client.reload_updates.reset_mock()
|
||||||
supervisor_client.refresh_updates.side_effect = SupervisorError("Unknown")
|
supervisor_client.reload_updates.side_effect = SupervisorError("Unknown")
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
"homeassistant",
|
"homeassistant",
|
||||||
"update_entity",
|
"update_entity",
|
||||||
@ -965,7 +997,7 @@ async def test_coordinator_updates(
|
|||||||
hass, dt_util.now() + timedelta(seconds=REQUEST_REFRESH_DELAY)
|
hass, dt_util.now() + timedelta(seconds=REQUEST_REFRESH_DELAY)
|
||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
supervisor_client.refresh_updates.assert_called_once()
|
supervisor_client.reload_updates.assert_called_once()
|
||||||
assert "Error on Supervisor API: Unknown" in caplog.text
|
assert "Error on Supervisor API: Unknown" in caplog.text
|
||||||
|
|
||||||
|
|
||||||
@ -983,7 +1015,7 @@ async def test_coordinator_updates_stats_entities_enabled(
|
|||||||
assert await hass.config_entries.async_setup(config_entry.entry_id)
|
assert await hass.config_entries.async_setup(config_entry.entry_id)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
# Initial refresh without stats
|
# Initial refresh without stats
|
||||||
supervisor_client.refresh_updates.assert_not_called()
|
supervisor_client.reload_updates.assert_not_called()
|
||||||
|
|
||||||
# Refresh with stats once we know which ones are needed
|
# Refresh with stats once we know which ones are needed
|
||||||
async_fire_time_changed(
|
async_fire_time_changed(
|
||||||
@ -991,12 +1023,12 @@ async def test_coordinator_updates_stats_entities_enabled(
|
|||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
supervisor_client.refresh_updates.assert_called_once()
|
supervisor_client.reload_updates.assert_called_once()
|
||||||
|
|
||||||
supervisor_client.refresh_updates.reset_mock()
|
supervisor_client.reload_updates.reset_mock()
|
||||||
async_fire_time_changed(hass, dt_util.now() + timedelta(minutes=20))
|
async_fire_time_changed(hass, dt_util.now() + timedelta(minutes=20))
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
supervisor_client.refresh_updates.assert_not_called()
|
supervisor_client.reload_updates.assert_not_called()
|
||||||
|
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
"homeassistant",
|
"homeassistant",
|
||||||
@ -1009,7 +1041,7 @@ async def test_coordinator_updates_stats_entities_enabled(
|
|||||||
},
|
},
|
||||||
blocking=True,
|
blocking=True,
|
||||||
)
|
)
|
||||||
supervisor_client.refresh_updates.assert_not_called()
|
supervisor_client.reload_updates.assert_not_called()
|
||||||
|
|
||||||
# There is a REQUEST_REFRESH_DELAYs cooldown on the debouncer
|
# There is a REQUEST_REFRESH_DELAYs cooldown on the debouncer
|
||||||
async_fire_time_changed(
|
async_fire_time_changed(
|
||||||
@ -1017,8 +1049,8 @@ async def test_coordinator_updates_stats_entities_enabled(
|
|||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
|
|
||||||
supervisor_client.refresh_updates.reset_mock()
|
supervisor_client.reload_updates.reset_mock()
|
||||||
supervisor_client.refresh_updates.side_effect = SupervisorError("Unknown")
|
supervisor_client.reload_updates.side_effect = SupervisorError("Unknown")
|
||||||
await hass.services.async_call(
|
await hass.services.async_call(
|
||||||
"homeassistant",
|
"homeassistant",
|
||||||
"update_entity",
|
"update_entity",
|
||||||
@ -1035,7 +1067,7 @@ async def test_coordinator_updates_stats_entities_enabled(
|
|||||||
hass, dt_util.now() + timedelta(seconds=REQUEST_REFRESH_DELAY)
|
hass, dt_util.now() + timedelta(seconds=REQUEST_REFRESH_DELAY)
|
||||||
)
|
)
|
||||||
await hass.async_block_till_done()
|
await hass.async_block_till_done()
|
||||||
supervisor_client.refresh_updates.assert_called_once()
|
supervisor_client.reload_updates.assert_called_once()
|
||||||
assert "Error on Supervisor API: Unknown" in caplog.text
|
assert "Error on Supervisor API: Unknown" in caplog.text
|
||||||
|
|
||||||
|
|
||||||
@ -1074,7 +1106,7 @@ async def test_setup_hardware_integration(
|
|||||||
await hass.async_block_till_done(wait_background_tasks=True)
|
await hass.async_block_till_done(wait_background_tasks=True)
|
||||||
|
|
||||||
assert result
|
assert result
|
||||||
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 18
|
assert aioclient_mock.call_count + len(supervisor_client.mock_calls) == 19
|
||||||
assert len(mock_setup_entry.mock_calls) == 1
|
assert len(mock_setup_entry.mock_calls) == 1
|
||||||
|
|
||||||
|
|
||||||
|
@ -130,6 +130,38 @@ def mock_all(
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
aioclient_mock.get(
|
||||||
|
"http://127.0.0.1/addons",
|
||||||
|
json={
|
||||||
|
"result": "ok",
|
||||||
|
"data": {
|
||||||
|
"addons": [
|
||||||
|
{
|
||||||
|
"name": "test",
|
||||||
|
"slug": "test",
|
||||||
|
"state": "started",
|
||||||
|
"update_available": True,
|
||||||
|
"icon": False,
|
||||||
|
"version": "2.0.0",
|
||||||
|
"version_latest": "2.0.1",
|
||||||
|
"repository": "core",
|
||||||
|
"url": "https://github.com/home-assistant/addons/test",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "test2",
|
||||||
|
"slug": "test2",
|
||||||
|
"state": "stopped",
|
||||||
|
"update_available": False,
|
||||||
|
"icon": True,
|
||||||
|
"version": "3.1.0",
|
||||||
|
"version_latest": "3.1.0",
|
||||||
|
"repository": "core",
|
||||||
|
"url": "https://github.com",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
},
|
||||||
|
)
|
||||||
aioclient_mock.get(
|
aioclient_mock.get(
|
||||||
"http://127.0.0.1/core/stats",
|
"http://127.0.0.1/core/stats",
|
||||||
json={
|
json={
|
||||||
|
Loading…
x
Reference in New Issue
Block a user