From 733e563500a61b839923af099e3fba9e6afd7fb5 Mon Sep 17 00:00:00 2001 From: epenet <6771947+epenet@users.noreply.github.com> Date: Mon, 10 Jun 2024 08:39:24 +0200 Subject: [PATCH] Improve type hints in blackbird tests (#119262) --- .../components/blackbird/test_media_player.py | 60 +++++++++++++------ 1 file changed, 43 insertions(+), 17 deletions(-) diff --git a/tests/components/blackbird/test_media_player.py b/tests/components/blackbird/test_media_player.py index 3b0465ef208..ec5a37f72ad 100644 --- a/tests/components/blackbird/test_media_player.py +++ b/tests/components/blackbird/test_media_player.py @@ -12,7 +12,10 @@ from homeassistant.components.blackbird.media_player import ( PLATFORM_SCHEMA, setup_platform, ) -from homeassistant.components.media_player import MediaPlayerEntityFeature +from homeassistant.components.media_player import ( + MediaPlayerEntity, + MediaPlayerEntityFeature, +) from homeassistant.const import STATE_OFF, STATE_ON from homeassistant.core import HomeAssistant @@ -166,13 +169,13 @@ def test_invalid_schemas() -> None: @pytest.fixture -def mock_blackbird(): +def mock_blackbird() -> MockBlackbird: """Return a mock blackbird instance.""" return MockBlackbird() @pytest.fixture -async def setup_blackbird(hass, mock_blackbird): +async def setup_blackbird(hass: HomeAssistant, mock_blackbird: MockBlackbird) -> None: """Set up blackbird.""" with mock.patch( "homeassistant.components.blackbird.media_player.get_blackbird", @@ -198,7 +201,9 @@ async def setup_blackbird(hass, mock_blackbird): @pytest.fixture -def media_player_entity(hass, setup_blackbird): +def media_player_entity( + hass: HomeAssistant, setup_blackbird: None +) -> MediaPlayerEntity: """Return the media player entity.""" media_player = hass.data[DATA_BLACKBIRD]["/dev/ttyUSB0-3"] media_player.hass = hass @@ -206,7 +211,8 @@ def media_player_entity(hass, setup_blackbird): return media_player -async def test_setup_platform(hass: HomeAssistant, setup_blackbird) -> None: +@pytest.mark.usefixtures("setup_blackbird") +async def test_setup_platform(hass: HomeAssistant) -> None: """Test setting up platform.""" # One service must be registered assert hass.services.has_service(DOMAIN, SERVICE_SETALLZONES) @@ -215,7 +221,9 @@ async def test_setup_platform(hass: HomeAssistant, setup_blackbird) -> None: async def test_setallzones_service_call_with_entity_id( - hass: HomeAssistant, media_player_entity, mock_blackbird + hass: HomeAssistant, + media_player_entity: MediaPlayerEntity, + mock_blackbird: MockBlackbird, ) -> None: """Test set all zone source service call with entity id.""" await hass.async_add_executor_job(media_player_entity.update) @@ -238,7 +246,9 @@ async def test_setallzones_service_call_with_entity_id( async def test_setallzones_service_call_without_entity_id( - mock_blackbird, hass: HomeAssistant, media_player_entity + mock_blackbird: MockBlackbird, + hass: HomeAssistant, + media_player_entity: MediaPlayerEntity, ) -> None: """Test set all zone source service call without entity id.""" await hass.async_add_executor_job(media_player_entity.update) @@ -257,7 +267,9 @@ async def test_setallzones_service_call_without_entity_id( assert media_player_entity.source == "three" -async def test_update(hass: HomeAssistant, media_player_entity) -> None: +async def test_update( + hass: HomeAssistant, media_player_entity: MediaPlayerEntity +) -> None: """Test updating values from blackbird.""" assert media_player_entity.state is None assert media_player_entity.source is None @@ -268,12 +280,16 @@ async def test_update(hass: HomeAssistant, media_player_entity) -> None: assert media_player_entity.source == "one" -async def test_name(media_player_entity) -> None: +async def test_name(media_player_entity: MediaPlayerEntity) -> None: """Test name property.""" assert media_player_entity.name == "Zone name" -async def test_state(hass: HomeAssistant, media_player_entity, mock_blackbird) -> None: +async def test_state( + hass: HomeAssistant, + media_player_entity: MediaPlayerEntity, + mock_blackbird: MockBlackbird, +) -> None: """Test state property.""" assert media_player_entity.state is None @@ -285,7 +301,7 @@ async def test_state(hass: HomeAssistant, media_player_entity, mock_blackbird) - assert media_player_entity.state == STATE_OFF -async def test_supported_features(media_player_entity) -> None: +async def test_supported_features(media_player_entity: MediaPlayerEntity) -> None: """Test supported features property.""" assert ( media_player_entity.supported_features @@ -295,28 +311,34 @@ async def test_supported_features(media_player_entity) -> None: ) -async def test_source(hass: HomeAssistant, media_player_entity) -> None: +async def test_source( + hass: HomeAssistant, media_player_entity: MediaPlayerEntity +) -> None: """Test source property.""" assert media_player_entity.source is None await hass.async_add_executor_job(media_player_entity.update) assert media_player_entity.source == "one" -async def test_media_title(hass: HomeAssistant, media_player_entity) -> None: +async def test_media_title( + hass: HomeAssistant, media_player_entity: MediaPlayerEntity +) -> None: """Test media title property.""" assert media_player_entity.media_title is None await hass.async_add_executor_job(media_player_entity.update) assert media_player_entity.media_title == "one" -async def test_source_list(media_player_entity) -> None: +async def test_source_list(media_player_entity: MediaPlayerEntity) -> None: """Test source list property.""" # Note, the list is sorted! assert media_player_entity.source_list == ["one", "two", "three"] async def test_select_source( - hass: HomeAssistant, media_player_entity, mock_blackbird + hass: HomeAssistant, + media_player_entity: MediaPlayerEntity, + mock_blackbird: MockBlackbird, ) -> None: """Test source selection methods.""" await hass.async_add_executor_job(media_player_entity.update) @@ -336,7 +358,9 @@ async def test_select_source( async def test_turn_on( - hass: HomeAssistant, media_player_entity, mock_blackbird + hass: HomeAssistant, + media_player_entity: MediaPlayerEntity, + mock_blackbird: MockBlackbird, ) -> None: """Testing turning on the zone.""" mock_blackbird.zones[3].power = False @@ -350,7 +374,9 @@ async def test_turn_on( async def test_turn_off( - hass: HomeAssistant, media_player_entity, mock_blackbird + hass: HomeAssistant, + media_player_entity: MediaPlayerEntity, + mock_blackbird: MockBlackbird, ) -> None: """Testing turning off the zone.""" mock_blackbird.zones[3].power = True