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

pull/37337/head
Paulus Schoutsen 2020-07-02 02:39:53 -07:00 committed by GitHub
parent a015e551eb
commit d08d00daa7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
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