From a3966192515a54ab8eae70f9418da679211ac85f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Fri, 23 Apr 2021 10:56:42 +0300 Subject: [PATCH] Use disabled_by constants (#49584) Co-authored-by: J. Nick Koston --- .../components/config/config_entries.py | 2 +- .../components/config/device_registry.py | 4 +- .../components/config/entity_registry.py | 4 +- tests/components/accuweather/test_sensor.py | 2 +- tests/components/brother/test_sensor.py | 2 +- .../components/config/test_config_entries.py | 10 +-- .../components/config/test_device_registry.py | 5 +- .../components/config/test_entity_registry.py | 8 +-- tests/components/hyperion/test_light.py | 2 +- tests/components/hyperion/test_switch.py | 2 +- tests/components/ipp/test_sensor.py | 2 +- tests/components/litejet/test_scene.py | 2 +- tests/components/met/test_weather.py | 2 +- .../components/monoprice/test_media_player.py | 2 +- tests/components/ozw/test_binary_sensor.py | 2 +- tests/components/ozw/test_sensor.py | 2 +- tests/components/sonarr/test_sensor.py | 2 +- tests/components/tasmota/test_sensor.py | 2 +- tests/components/wled/test_sensor.py | 2 +- .../components/zwave_js/test_binary_sensor.py | 2 +- tests/helpers/test_device_registry.py | 25 +++---- tests/helpers/test_entity.py | 6 +- tests/helpers/test_entity_platform.py | 2 +- tests/helpers/test_entity_registry.py | 65 +++++++++++-------- tests/test_config_entries.py | 8 ++- 25 files changed, 92 insertions(+), 75 deletions(-) diff --git a/homeassistant/components/config/config_entries.py b/homeassistant/components/config/config_entries.py index 6f9b96b9dfa..264510627e0 100644 --- a/homeassistant/components/config/config_entries.py +++ b/homeassistant/components/config/config_entries.py @@ -311,7 +311,7 @@ async def config_entry_update(hass, connection, msg): "type": "config_entries/disable", "entry_id": str, # We only allow setting disabled_by user via API. - "disabled_by": vol.Any("user", None), + "disabled_by": vol.Any(config_entries.DISABLED_USER, None), } ) async def config_entry_disable(hass, connection, msg): diff --git a/homeassistant/components/config/device_registry.py b/homeassistant/components/config/device_registry.py index a43a863444a..4363fbbbe4d 100644 --- a/homeassistant/components/config/device_registry.py +++ b/homeassistant/components/config/device_registry.py @@ -7,7 +7,7 @@ from homeassistant.components.websocket_api.decorators import ( require_admin, ) from homeassistant.core import callback -from homeassistant.helpers.device_registry import async_get_registry +from homeassistant.helpers.device_registry import DISABLED_USER, async_get_registry WS_TYPE_LIST = "config/device_registry/list" SCHEMA_WS_LIST = websocket_api.BASE_COMMAND_MESSAGE_SCHEMA.extend( @@ -22,7 +22,7 @@ SCHEMA_WS_UPDATE = websocket_api.BASE_COMMAND_MESSAGE_SCHEMA.extend( vol.Optional("area_id"): vol.Any(str, None), vol.Optional("name_by_user"): vol.Any(str, None), # We only allow setting disabled_by user via API. - vol.Optional("disabled_by"): vol.Any("user", None), + vol.Optional("disabled_by"): vol.Any(DISABLED_USER, None), } ) diff --git a/homeassistant/components/config/entity_registry.py b/homeassistant/components/config/entity_registry.py index f0ee30ca120..43196acf319 100644 --- a/homeassistant/components/config/entity_registry.py +++ b/homeassistant/components/config/entity_registry.py @@ -10,7 +10,7 @@ from homeassistant.components.websocket_api.decorators import ( ) from homeassistant.core import callback from homeassistant.helpers import config_validation as cv -from homeassistant.helpers.entity_registry import async_get_registry +from homeassistant.helpers.entity_registry import DISABLED_USER, async_get_registry async def async_setup(hass): @@ -75,7 +75,7 @@ async def websocket_get_entity(hass, connection, msg): vol.Optional("area_id"): vol.Any(str, None), vol.Optional("new_entity_id"): str, # We only allow setting disabled_by user via API. - vol.Optional("disabled_by"): vol.Any("user", None), + vol.Optional("disabled_by"): vol.Any(DISABLED_USER, None), } ) async def websocket_update_entity(hass, connection, msg): diff --git a/tests/components/accuweather/test_sensor.py b/tests/components/accuweather/test_sensor.py index bafad72ec0b..a4436445340 100644 --- a/tests/components/accuweather/test_sensor.py +++ b/tests/components/accuweather/test_sensor.py @@ -173,7 +173,7 @@ async def test_sensor_disabled(hass): assert entry assert entry.unique_id == "0123456-apparenttemperature" assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION # Test enabling entity updated_entry = registry.async_update_entity( diff --git a/tests/components/brother/test_sensor.py b/tests/components/brother/test_sensor.py index 49f7340a37a..225cf5ce87a 100644 --- a/tests/components/brother/test_sensor.py +++ b/tests/components/brother/test_sensor.py @@ -250,7 +250,7 @@ async def test_disabled_by_default_sensors(hass): assert entry assert entry.unique_id == "0123456789_uptime" assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION async def test_availability(hass): diff --git a/tests/components/config/test_config_entries.py b/tests/components/config/test_config_entries.py index 271333b092a..4b8155b6513 100644 --- a/tests/components/config/test_config_entries.py +++ b/tests/components/config/test_config_entries.py @@ -73,7 +73,7 @@ async def test_get_entries(hass, client): domain="comp3", title="Test 3", source="bla3", - disabled_by="user", + disabled_by=core_ce.DISABLED_USER, ).add_to_hass(hass) resp = await client.get("/api/config/config_entries/entry") @@ -112,7 +112,7 @@ async def test_get_entries(hass, client): "connection_class": "unknown", "supports_options": False, "supports_unload": False, - "disabled_by": "user", + "disabled_by": core_ce.DISABLED_USER, "reason": None, }, ] @@ -800,14 +800,14 @@ async def test_disable_entry(hass, hass_ws_client): "id": 5, "type": "config_entries/disable", "entry_id": entry.entry_id, - "disabled_by": "user", + "disabled_by": core_ce.DISABLED_USER, } ) response = await ws_client.receive_json() assert response["success"] assert response["result"] == {"require_restart": True} - assert entry.disabled_by == "user" + assert entry.disabled_by == core_ce.DISABLED_USER assert entry.state == "failed_unload" # Enable @@ -853,7 +853,7 @@ async def test_disable_entry_nonexisting(hass, hass_ws_client): "id": 5, "type": "config_entries/disable", "entry_id": "non_existing", - "disabled_by": "user", + "disabled_by": core_ce.DISABLED_USER, } ) response = await ws_client.receive_json() diff --git a/tests/components/config/test_device_registry.py b/tests/components/config/test_device_registry.py index a123a2edb35..04a353cb200 100644 --- a/tests/components/config/test_device_registry.py +++ b/tests/components/config/test_device_registry.py @@ -2,6 +2,7 @@ import pytest from homeassistant.components.config import device_registry +from homeassistant.helpers import device_registry as helpers_dr from tests.common import mock_device_registry from tests.components.blueprint.conftest import stub_blueprint_populate # noqa: F401 @@ -94,7 +95,7 @@ async def test_update_device(hass, client, registry): "device_id": device.id, "area_id": "12345A", "name_by_user": "Test Friendly Name", - "disabled_by": "user", + "disabled_by": helpers_dr.DISABLED_USER, "type": "config/device_registry/update", } ) @@ -104,5 +105,5 @@ async def test_update_device(hass, client, registry): assert msg["result"]["id"] == device.id assert msg["result"]["area_id"] == "12345A" assert msg["result"]["name_by_user"] == "Test Friendly Name" - assert msg["result"]["disabled_by"] == "user" + assert msg["result"]["disabled_by"] == helpers_dr.DISABLED_USER assert len(registry.devices) == 1 diff --git a/tests/components/config/test_entity_registry.py b/tests/components/config/test_entity_registry.py index 93d33bc9562..3d5861c2db3 100644 --- a/tests/components/config/test_entity_registry.py +++ b/tests/components/config/test_entity_registry.py @@ -5,7 +5,7 @@ import pytest from homeassistant.components.config import entity_registry from homeassistant.const import ATTR_ICON -from homeassistant.helpers.entity_registry import RegistryEntry +from homeassistant.helpers.entity_registry import DISABLED_USER, RegistryEntry from tests.common import ( MockConfigEntry, @@ -200,14 +200,14 @@ async def test_update_entity(hass, client): "id": 7, "type": "config/entity_registry/update", "entity_id": "test_domain.world", - "disabled_by": "user", + "disabled_by": DISABLED_USER, } ) msg = await client.receive_json() assert hass.states.get("test_domain.world") is None - assert registry.entities["test_domain.world"].disabled_by == "user" + assert registry.entities["test_domain.world"].disabled_by == DISABLED_USER # UPDATE DISABLED_BY TO NONE await client.send_json( @@ -305,7 +305,7 @@ async def test_enable_entity_disabled_device(hass, client, device_registry): identifiers={("bridgeid", "0123")}, manufacturer="manufacturer", model="model", - disabled_by="user", + disabled_by=DISABLED_USER, ) mock_registry( diff --git a/tests/components/hyperion/test_light.py b/tests/components/hyperion/test_light.py index bb20e644565..e0ab681b7a3 100644 --- a/tests/components/hyperion/test_light.py +++ b/tests/components/hyperion/test_light.py @@ -1345,7 +1345,7 @@ async def test_lights_can_be_enabled(hass: HomeAssistantType) -> None: entry = entity_registry.async_get(TEST_PRIORITY_LIGHT_ENTITY_ID_1) assert entry assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION entity_state = hass.states.get(TEST_PRIORITY_LIGHT_ENTITY_ID_1) assert not entity_state diff --git a/tests/components/hyperion/test_switch.py b/tests/components/hyperion/test_switch.py index 5105d80f40d..764f234eb0e 100644 --- a/tests/components/hyperion/test_switch.py +++ b/tests/components/hyperion/test_switch.py @@ -199,7 +199,7 @@ async def test_switches_can_be_enabled(hass: HomeAssistantType) -> None: entry = entity_registry.async_get(entity_id) assert entry assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION entity_state = hass.states.get(entity_id) assert not entity_state diff --git a/tests/components/ipp/test_sensor.py b/tests/components/ipp/test_sensor.py index 9366b290fef..405d7309b23 100644 --- a/tests/components/ipp/test_sensor.py +++ b/tests/components/ipp/test_sensor.py @@ -95,7 +95,7 @@ async def test_disabled_by_default_sensors( entry = registry.async_get("sensor.epson_xp_6000_series_uptime") assert entry assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION async def test_missing_entry_unique_id( diff --git a/tests/components/litejet/test_scene.py b/tests/components/litejet/test_scene.py index c76c8738f86..077793279d8 100644 --- a/tests/components/litejet/test_scene.py +++ b/tests/components/litejet/test_scene.py @@ -23,7 +23,7 @@ async def test_disabled_by_default(hass, mock_litejet): entry = registry.async_get(ENTITY_SCENE) assert entry assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION async def test_activate(hass, mock_litejet): diff --git a/tests/components/met/test_weather.py b/tests/components/met/test_weather.py index 92e9b674668..32f36d09630 100644 --- a/tests/components/met/test_weather.py +++ b/tests/components/met/test_weather.py @@ -21,7 +21,7 @@ async def test_tracking_home(hass, mock_weather): entry = registry.async_get("weather.test_home_hourly") assert entry assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION # Test we track config await hass.config.async_update(latitude=10, longitude=20) diff --git a/tests/components/monoprice/test_media_player.py b/tests/components/monoprice/test_media_player.py index 9d3bbd40a46..977d57cb07c 100644 --- a/tests/components/monoprice/test_media_player.py +++ b/tests/components/monoprice/test_media_player.py @@ -518,7 +518,7 @@ async def test_first_run_with_failing_zones(hass): entry = registry.async_get(ZONE_7_ID) assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION async def test_not_first_run_with_failing_zone(hass): diff --git a/tests/components/ozw/test_binary_sensor.py b/tests/components/ozw/test_binary_sensor.py index 95b150b5791..e6af71d41b4 100644 --- a/tests/components/ozw/test_binary_sensor.py +++ b/tests/components/ozw/test_binary_sensor.py @@ -22,7 +22,7 @@ async def test_binary_sensor(hass, generic_data, binary_sensor_msg): entry = registry.async_get(entity_id) assert entry assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION # Test enabling legacy entity updated_entry = registry.async_update_entity( diff --git a/tests/components/ozw/test_sensor.py b/tests/components/ozw/test_sensor.py index 500bd81aa0b..e043d5eb58d 100644 --- a/tests/components/ozw/test_sensor.py +++ b/tests/components/ozw/test_sensor.py @@ -43,7 +43,7 @@ async def test_sensor(hass, generic_data): entry = registry.async_get(entity_id) assert entry assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION # Test enabling entity updated_entry = registry.async_update_entity( diff --git a/tests/components/sonarr/test_sensor.py b/tests/components/sonarr/test_sensor.py index 3f99325c3ef..9824319f3ff 100644 --- a/tests/components/sonarr/test_sensor.py +++ b/tests/components/sonarr/test_sensor.py @@ -117,7 +117,7 @@ async def test_disabled_by_default_sensors( entry = registry.async_get(entity_id) assert entry assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION async def test_availability( diff --git a/tests/components/tasmota/test_sensor.py b/tests/components/tasmota/test_sensor.py index 2b7c388ca2f..0d6820f2d34 100644 --- a/tests/components/tasmota/test_sensor.py +++ b/tests/components/tasmota/test_sensor.py @@ -542,7 +542,7 @@ async def test_enable_status_sensor(hass, mqtt_mock, setup_tasmota): assert state is None entry = entity_reg.async_get("sensor.tasmota_signal") assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION # Enable the status sensor updated_entry = entity_reg.async_update_entity( diff --git a/tests/components/wled/test_sensor.py b/tests/components/wled/test_sensor.py index 9cebf2cda32..f20e2f0419a 100644 --- a/tests/components/wled/test_sensor.py +++ b/tests/components/wled/test_sensor.py @@ -194,4 +194,4 @@ async def test_disabled_by_default_sensors( entry = registry.async_get(entity_id) assert entry assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION diff --git a/tests/components/zwave_js/test_binary_sensor.py b/tests/components/zwave_js/test_binary_sensor.py index ddfed9727e6..421c808bc0b 100644 --- a/tests/components/zwave_js/test_binary_sensor.py +++ b/tests/components/zwave_js/test_binary_sensor.py @@ -69,7 +69,7 @@ async def test_disabled_legacy_sensor(hass, multisensor_6, integration): entry = registry.async_get(entity_id) assert entry assert entry.disabled - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION # Test enabling legacy entity updated_entry = registry.async_update_entity( diff --git a/tests/helpers/test_device_registry.py b/tests/helpers/test_device_registry.py index 1a768662fc7..518434cf79b 100644 --- a/tests/helpers/test_device_registry.py +++ b/tests/helpers/test_device_registry.py @@ -4,6 +4,7 @@ from unittest.mock import patch import pytest +from homeassistant import config_entries from homeassistant.const import EVENT_HOMEASSISTANT_STARTED from homeassistant.core import CoreState, callback from homeassistant.exceptions import RequiredParameterMissing @@ -181,7 +182,7 @@ async def test_loading_from_storage(hass, hass_storage): "entry_type": "service", "area_id": "12345A", "name_by_user": "Test Friendly Name", - "disabled_by": "user", + "disabled_by": device_registry.DISABLED_USER, "suggested_area": "Kitchen", } ], @@ -212,7 +213,7 @@ async def test_loading_from_storage(hass, hass_storage): assert entry.area_id == "12345A" assert entry.name_by_user == "Test Friendly Name" assert entry.entry_type == "service" - assert entry.disabled_by == "user" + assert entry.disabled_by == device_registry.DISABLED_USER assert isinstance(entry.config_entries, set) assert isinstance(entry.connections, set) assert isinstance(entry.identifiers, set) @@ -493,7 +494,7 @@ async def test_loading_saving_data(hass, registry, area_registry): manufacturer="manufacturer", model="light", via_device=("hue", "0123"), - disabled_by="user", + disabled_by=device_registry.DISABLED_USER, ) orig_light2 = registry.async_get_or_create( @@ -542,7 +543,7 @@ async def test_loading_saving_data(hass, registry, area_registry): manufacturer="manufacturer", model="light", via_device=("hue", "0123"), - disabled_by="user", + disabled_by=device_registry.DISABLED_USER, suggested_area="Kitchen", ) @@ -651,7 +652,7 @@ async def test_update(registry): name_by_user="Test Friendly Name", new_identifiers=new_identifiers, via_device_id="98765B", - disabled_by="user", + disabled_by=device_registry.DISABLED_USER, ) assert mock_save.call_count == 1 @@ -662,7 +663,7 @@ async def test_update(registry): assert updated_entry.name_by_user == "Test Friendly Name" assert updated_entry.identifiers == new_identifiers assert updated_entry.via_device_id == "98765B" - assert updated_entry.disabled_by == "user" + assert updated_entry.disabled_by == device_registry.DISABLED_USER assert registry.async_get_device({("hue", "456")}) is None assert registry.async_get_device({("bla", "123")}) is None @@ -1226,21 +1227,23 @@ async def test_disable_config_entry_disables_devices(hass, registry): entry2 = registry.async_get_or_create( config_entry_id=config_entry.entry_id, connections={("mac", "34:56:AB:CD:EF:12")}, - disabled_by="user", + disabled_by=device_registry.DISABLED_USER, ) assert not entry1.disabled assert entry2.disabled - await hass.config_entries.async_set_disabled_by(config_entry.entry_id, "user") + await hass.config_entries.async_set_disabled_by( + config_entry.entry_id, config_entries.DISABLED_USER + ) await hass.async_block_till_done() entry1 = registry.async_get(entry1.id) assert entry1.disabled - assert entry1.disabled_by == "config_entry" + assert entry1.disabled_by == device_registry.DISABLED_CONFIG_ENTRY entry2 = registry.async_get(entry2.id) assert entry2.disabled - assert entry2.disabled_by == "user" + assert entry2.disabled_by == device_registry.DISABLED_USER await hass.config_entries.async_set_disabled_by(config_entry.entry_id, None) await hass.async_block_till_done() @@ -1249,4 +1252,4 @@ async def test_disable_config_entry_disables_devices(hass, registry): assert not entry1.disabled entry2 = registry.async_get(entry2.id) assert entry2.disabled - assert entry2.disabled_by == "user" + assert entry2.disabled_by == device_registry.DISABLED_USER diff --git a/tests/helpers/test_entity.py b/tests/helpers/test_entity.py index 6eeabb59eba..8d587301fb8 100644 --- a/tests/helpers/test_entity.py +++ b/tests/helpers/test_entity.py @@ -575,7 +575,7 @@ async def test_warn_disabled(hass, caplog): entity_id="hello.world", unique_id="test-unique-id", platform="test-platform", - disabled_by="user", + disabled_by=entity_registry.DISABLED_USER, ) mock_registry(hass, {"hello.world": entry}) @@ -616,7 +616,9 @@ async def test_disabled_in_entity_registry(hass): await ent.add_to_platform_finish() assert hass.states.get("hello.world") is not None - entry2 = registry.async_update_entity("hello.world", disabled_by="user") + entry2 = registry.async_update_entity( + "hello.world", disabled_by=entity_registry.DISABLED_USER + ) await hass.async_block_till_done() assert entry2 != entry assert ent.registry_entry == entry2 diff --git a/tests/helpers/test_entity_platform.py b/tests/helpers/test_entity_platform.py index d24084ff517..9ab269811f9 100644 --- a/tests/helpers/test_entity_platform.py +++ b/tests/helpers/test_entity_platform.py @@ -926,7 +926,7 @@ async def test_entity_disabled_by_integration(hass): entry_default = registry.async_get_or_create(DOMAIN, DOMAIN, "default") assert entry_default.disabled_by is None entry_disabled = registry.async_get_or_create(DOMAIN, DOMAIN, "disabled") - assert entry_disabled.disabled_by == "integration" + assert entry_disabled.disabled_by == er.DISABLED_INTEGRATION async def test_entity_info_added_to_entity_registry(hass): diff --git a/tests/helpers/test_entity_registry.py b/tests/helpers/test_entity_registry.py index d671aacebb3..a1050e5fc67 100644 --- a/tests/helpers/test_entity_registry.py +++ b/tests/helpers/test_entity_registry.py @@ -3,6 +3,7 @@ from unittest.mock import patch import pytest +from homeassistant import config_entries from homeassistant.const import EVENT_HOMEASSISTANT_START, STATE_UNAVAILABLE from homeassistant.core import CoreState, callback, valid_entity_id from homeassistant.helpers import entity_registry as er @@ -239,19 +240,19 @@ async def test_loading_extra_values(hass, hass_storage): "entity_id": "test.disabled_user", "platform": "super_platform", "unique_id": "disabled-user", - "disabled_by": "user", + "disabled_by": er.DISABLED_USER, }, { "entity_id": "test.disabled_hass", "platform": "super_platform", "unique_id": "disabled-hass", - "disabled_by": "hass", + "disabled_by": er.DISABLED_HASS, }, { "entity_id": "test.invalid__entity", "platform": "super_platform", "unique_id": "invalid-hass", - "disabled_by": "hass", + "disabled_by": er.DISABLED_HASS, }, ] }, @@ -361,7 +362,7 @@ async def test_migration(hass): "unique_id": "test-unique", "platform": "test-platform", "name": "Test Name", - "disabled_by": "hass", + "disabled_by": er.DISABLED_HASS, } } with patch("os.path.isfile", return_value=True), patch("os.remove"), patch( @@ -378,7 +379,7 @@ async def test_migration(hass): config_entry=mock_config, ) assert entry.name == "Test Name" - assert entry.disabled_by == "hass" + assert entry.disabled_by == er.DISABLED_HASS assert entry.config_entry_id == "test-config-id" @@ -497,13 +498,15 @@ async def test_update_entity(registry): async def test_disabled_by(registry): """Test that we can disable an entry when we create it.""" - entry = registry.async_get_or_create("light", "hue", "5678", disabled_by="hass") - assert entry.disabled_by == "hass" + entry = registry.async_get_or_create( + "light", "hue", "5678", disabled_by=er.DISABLED_HASS + ) + assert entry.disabled_by == er.DISABLED_HASS entry = registry.async_get_or_create( - "light", "hue", "5678", disabled_by="integration" + "light", "hue", "5678", disabled_by=er.DISABLED_INTEGRATION ) - assert entry.disabled_by == "hass" + assert entry.disabled_by == er.DISABLED_HASS entry2 = registry.async_get_or_create("light", "hue", "1234") assert entry2.disabled_by is None @@ -519,12 +522,16 @@ async def test_disabled_by_system_options(registry): entry = registry.async_get_or_create( "light", "hue", "AAAA", config_entry=mock_config ) - assert entry.disabled_by == "integration" + assert entry.disabled_by == er.DISABLED_INTEGRATION entry2 = registry.async_get_or_create( - "light", "hue", "BBBB", config_entry=mock_config, disabled_by="user" + "light", + "hue", + "BBBB", + config_entry=mock_config, + disabled_by=er.DISABLED_USER, ) - assert entry2.disabled_by == "user" + assert entry2.disabled_by == er.DISABLED_USER async def test_restore_states(hass): @@ -755,7 +762,7 @@ async def test_disable_device_disables_entities(hass, registry): "ABCD", config_entry=config_entry, device_id=device_entry.id, - disabled_by="user", + disabled_by=er.DISABLED_USER, ) entry3 = registry.async_get_or_create( "light", @@ -763,25 +770,25 @@ async def test_disable_device_disables_entities(hass, registry): "EFGH", config_entry=config_entry, device_id=device_entry.id, - disabled_by="config_entry", + disabled_by=er.DISABLED_CONFIG_ENTRY, ) assert not entry1.disabled assert entry2.disabled assert entry3.disabled - device_registry.async_update_device(device_entry.id, disabled_by="user") + device_registry.async_update_device(device_entry.id, disabled_by=er.DISABLED_USER) await hass.async_block_till_done() entry1 = registry.async_get(entry1.entity_id) assert entry1.disabled - assert entry1.disabled_by == "device" + assert entry1.disabled_by == er.DISABLED_DEVICE entry2 = registry.async_get(entry2.entity_id) assert entry2.disabled - assert entry2.disabled_by == "user" + assert entry2.disabled_by == er.DISABLED_USER entry3 = registry.async_get(entry3.entity_id) assert entry3.disabled - assert entry3.disabled_by == "config_entry" + assert entry3.disabled_by == er.DISABLED_CONFIG_ENTRY device_registry.async_update_device(device_entry.id, disabled_by=None) await hass.async_block_till_done() @@ -790,10 +797,10 @@ async def test_disable_device_disables_entities(hass, registry): assert not entry1.disabled entry2 = registry.async_get(entry2.entity_id) assert entry2.disabled - assert entry2.disabled_by == "user" + assert entry2.disabled_by == er.DISABLED_USER entry3 = registry.async_get(entry3.entity_id) assert entry3.disabled - assert entry3.disabled_by == "config_entry" + assert entry3.disabled_by == er.DISABLED_CONFIG_ENTRY async def test_disable_config_entry_disables_entities(hass, registry): @@ -820,7 +827,7 @@ async def test_disable_config_entry_disables_entities(hass, registry): "ABCD", config_entry=config_entry, device_id=device_entry.id, - disabled_by="user", + disabled_by=er.DISABLED_USER, ) entry3 = registry.async_get_or_create( "light", @@ -828,25 +835,27 @@ async def test_disable_config_entry_disables_entities(hass, registry): "EFGH", config_entry=config_entry, device_id=device_entry.id, - disabled_by="device", + disabled_by=er.DISABLED_DEVICE, ) assert not entry1.disabled assert entry2.disabled assert entry3.disabled - await hass.config_entries.async_set_disabled_by(config_entry.entry_id, "user") + await hass.config_entries.async_set_disabled_by( + config_entry.entry_id, config_entries.DISABLED_USER + ) await hass.async_block_till_done() entry1 = registry.async_get(entry1.entity_id) assert entry1.disabled - assert entry1.disabled_by == "config_entry" + assert entry1.disabled_by == er.DISABLED_CONFIG_ENTRY entry2 = registry.async_get(entry2.entity_id) assert entry2.disabled - assert entry2.disabled_by == "user" + assert entry2.disabled_by == er.DISABLED_USER entry3 = registry.async_get(entry3.entity_id) assert entry3.disabled - assert entry3.disabled_by == "device" + assert entry3.disabled_by == er.DISABLED_DEVICE await hass.config_entries.async_set_disabled_by(config_entry.entry_id, None) await hass.async_block_till_done() @@ -855,7 +864,7 @@ async def test_disable_config_entry_disables_entities(hass, registry): assert not entry1.disabled entry2 = registry.async_get(entry2.entity_id) assert entry2.disabled - assert entry2.disabled_by == "user" + assert entry2.disabled_by == er.DISABLED_USER # The device was re-enabled, so entity disabled by the device will be re-enabled too entry3 = registry.async_get(entry3.entity_id) assert not entry3.disabled_by @@ -885,7 +894,7 @@ async def test_disabled_entities_excluded_from_entity_list(hass, registry): "ABCD", config_entry=config_entry, device_id=device_entry.id, - disabled_by="user", + disabled_by=er.DISABLED_USER, ) entries = er.async_entries_for_device(registry, device_entry.id) diff --git a/tests/test_config_entries.py b/tests/test_config_entries.py index 326c7ba19ca..4de62cc0cfc 100644 --- a/tests/test_config_entries.py +++ b/tests/test_config_entries.py @@ -504,7 +504,9 @@ async def test_domains_gets_domains_excludes_ignore_and_disabled(manager): domain="ignored", source=config_entries.SOURCE_IGNORE ).add_to_manager(manager) MockConfigEntry(domain="test3").add_to_manager(manager) - MockConfigEntry(domain="disabled", disabled_by="user").add_to_manager(manager) + MockConfigEntry( + domain="disabled", disabled_by=config_entries.DISABLED_USER + ).add_to_manager(manager) assert manager.async_domains() == ["test", "test2", "test3"] assert manager.async_domains(include_ignore=False) == ["test", "test2", "test3"] assert manager.async_domains(include_disabled=False) == ["test", "test2", "test3"] @@ -1348,7 +1350,7 @@ async def test_reload_entry_entity_registry_ignores_no_entry(hass): # Test we ignore entities without config entry entry = registry.async_get_or_create("light", "hue", "123") - registry.async_update_entity(entry.entity_id, disabled_by="user") + registry.async_update_entity(entry.entity_id, disabled_by=er.DISABLED_USER) await hass.async_block_till_done() assert not handler.changed assert handler._remove_call_later is None @@ -1387,7 +1389,7 @@ async def test_reload_entry_entity_registry_works(hass): assert handler._remove_call_later is None # Disable entity, we should not do anything, only act when enabled. - registry.async_update_entity(entity_entry.entity_id, disabled_by="user") + registry.async_update_entity(entity_entry.entity_id, disabled_by=er.DISABLED_USER) await hass.async_block_till_done() assert not handler.changed assert handler._remove_call_later is None