diff --git a/homeassistant_api/models/domains.py b/homeassistant_api/models/domains.py index 3c0f7aa6..a0754bb1 100644 --- a/homeassistant_api/models/domains.py +++ b/homeassistant_api/models/domains.py @@ -341,6 +341,7 @@ class ServiceFieldSelectorLocation(BaseModel): class ServiceFieldSelectorMedia(BaseModel): accept: Optional[List[str]] = None + multiple: bool = False class ServiceFieldSelectorNavigation(BaseModel): @@ -483,6 +484,52 @@ class ServiceFieldSelectorUIStateContext(BaseModel): allow_name: Optional[bool] = None +# fields.file.ServiceField.selector.media.multiple +# Extra inputs are not permitted [type=extra_forbidden, input_value=False, input_type=bool] +# For further information visit https://errors.pydantic.dev/2.12/v/extra_forbidden +# fields.file.ServiceFieldCollection.fields +# Field required [type=missing, input_value={'required': True, 'selec...'], 'multiple': False}}}, input_type=dict] +# For further information visit https://errors.pydantic.dev/2.12/v/missing +# fields.file.ServiceFieldCollection.required +# Extra inputs are not permitted [type=extra_forbidden, input_value=True, input_type=bool] +# For further information visit https://errors.pydantic.dev/2.12/v/extra_forbidden +# fields.file.ServiceFieldCollection.selector +# Extra inputs are not permitted [type=extra_forbidden, input_value={'media': {'accept': ['im...*'], 'multiple': False}}, input_type=dict] +# For further information visit https://errors.pydantic.dev/2.12/v/extra_forbidden + +# fields.media.ServiceField.selector.media.multiple +# Extra inputs are not permitted [type=extra_forbidden, input_value=False, input_type=bool] +# For further information visit https://errors.pydantic.dev/2.12/v/extra_forbidden + +# fields.media.ServiceFieldCollection.fields +# Field required [type=missing, input_value={'required': True, 'selec...ontent_type": "music"}'}, input_type=dict] +# For further information visit https://errors.pydantic.dev/2.12/v/missing +# fields.media.ServiceFieldCollection.required +# Extra inputs are not permitted [type=extra_forbidden, input_value=True, input_type=bool] +# For further information visit https://errors.pydantic.dev/2.12/v/extra_forbidden +# fields.media.ServiceFieldCollection.selector +# Extra inputs are not permitted [type=extra_forbidden, input_value={'media': {'multiple': False}}, input_type=dict] +# For further information visit https://errors.pydantic.dev/2.12/v/extra_forbidden +# fields.media.ServiceFieldCollection.example +# Extra inputs are not permitted [type=extra_forbidden, input_value='{"media_content_id": "ht...content_type": "music"}', input_type=str] +# For further information visit https://errors.pydantic.dev/2.12/v/extra_forbidden + +# fields.media.ServiceField.selector.media.multiple +# Extra inputs are not permitted [type=extra_forbidden, input_value=False, input_type=bool] +# For further information visit https://errors.pydantic.dev/2.12/v/extra_forbidden +# fields.media.ServiceFieldCollection.fields +# Field required [type=missing, input_value={'required': True, 'selec...ontent_type": "music"}'}, input_type=dict] +# For further information visit https://errors.pydantic.dev/2.12/v/missing +# fields.media.ServiceFieldCollection.required +# Extra inputs are not permitted [type=extra_forbidden, input_value=True, input_type=bool] +# For further information visit https://errors.pydantic.dev/2.12/v/extra_forbidden +# fields.media.ServiceFieldCollection.selector +# Extra inputs are not permitted [type=extra_forbidden, input_value={'media': {'multiple': False}}, input_type=dict] +# For further information visit https://errors.pydantic.dev/2.12/v/extra_forbidden +# fields.media.ServiceFieldCollection.example +# Extra inputs are not permitted [type=extra_forbidden, input_value='{"media_content_id": "ht...content_type": "music"}', input_type=str] +# For further information visit https://errors.pydantic.dev/2.12/v/extra_forbidden``` + class ServiceFieldSelector(BaseModel): action: Optional[ServiceFieldSelectorAction] = None addon: Optional[ServiceFieldSelectorAddon] = None @@ -541,8 +588,6 @@ class ServiceFieldSelector(BaseModel): # Service bases - - class ServiceFieldFilter(BaseModel): supported_features: Optional[Union[List[int], int]] = ( None # Bitset (any needs to be supported [or all within specified list]) diff --git a/tests/conftest.py b/tests/conftest.py index 3381d640..d0ed995b 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -1,7 +1,7 @@ import asyncio import logging import os -from typing import AsyncGenerator, Generator, Literal +from typing import AsyncGenerator, Generator, Literal, cast import pytest import pytest_asyncio @@ -32,7 +32,7 @@ def setup_cached_client(wait_for_server) -> Generator[Client, None, None]: os.environ["HOMEASSISTANTAPI_URL"], os.environ["HOMEASSISTANTAPI_TOKEN"], ) as client: - yield client + yield cast(Client, client) @pytest.fixture(scope="session")