Limit entity platform entity service to same integration (#37313)

This commit is contained in:
Paulus Schoutsen
2020-07-02 02:39:53 -07:00
committed by GitHub
parent a015e551eb
commit d08d00daa7
2 changed files with 14 additions and 1 deletions

View File

@@ -517,7 +517,11 @@ class EntityPlatform:
"""Handle the service."""
await service.entity_service_call(
self.hass,
self.hass.data[DATA_ENTITY_PLATFORM][self.platform_name],
[
plf
for plf in self.hass.data[DATA_ENTITY_PLATFORM][self.platform_name]
if plf.domain == self.domain
],
func,
call,
required_features,

View File

@@ -882,6 +882,15 @@ async def test_platforms_sharing_services(hass):
entity2 = MockEntity(entity_id="mock_integration.entity_2")
await entity_platform2.async_add_entities([entity2])
entity_platform3 = MockEntityPlatform(
hass,
domain="different_integration",
platform_name="mock_platform",
platform=None,
)
entity3 = MockEntity(entity_id="different_integration.entity_3")
await entity_platform3.async_add_entities([entity3])
entities = []
@callback