"""Test image media source.""" import pytest from homeassistant.components import media_source from homeassistant.core import HomeAssistant from homeassistant.setup import async_setup_component @pytest.fixture(autouse=True) async def setup_media_source(hass): """Set up media source.""" assert await async_setup_component(hass, "media_source", {}) async def test_browsing(hass: HomeAssistant, mock_image_platform) -> None: """Test browsing image media source.""" item = await media_source.async_browse_media(hass, "media-source://image") assert item is not None assert item.title == "Image" assert len(item.children) == 1 assert item.children[0].media_content_type == "image/jpeg" async def test_resolving(hass: HomeAssistant, mock_image_platform) -> None: """Test resolving.""" item = await media_source.async_resolve_media( hass, "media-source://image/image.test", None ) assert item is not None assert item.url == "/api/image_proxy_stream/image.test" assert item.mime_type == "image/jpeg" async def test_resolving_non_existing_camera( hass: HomeAssistant, mock_image_platform ) -> None: """Test resolving.""" with pytest.raises( media_source.Unresolvable, match="Could not resolve media item: image.non_existing", ): await media_source.async_resolve_media( hass, "media-source://image/image.non_existing", None )