|
10 | 10 | SERVICE_TURN_ON, |
11 | 11 | SERVICE_TURN_OFF, |
12 | 12 | SERVICE_VOLUME_SET, |
| 13 | + SERVICE_MEDIA_PAUSE, |
13 | 14 | SERVICE_MEDIA_NEXT_TRACK, |
14 | 15 | SERVICE_MEDIA_PREVIOUS_TRACK, |
15 | 16 | ATTR_MEDIA_VOLUME_LEVEL, |
@@ -227,3 +228,35 @@ async def test_smart_speaker_play_media( |
227 | 228 | "supported_features": 22461, |
228 | 229 | "media_track": 0, |
229 | 230 | } |
| 231 | + |
| 232 | + |
| 233 | +@pytest.mark.parametrize( |
| 234 | + ("config_yaml_fixture", "test_entity"), |
| 235 | + [(f"{FIXTURES}/smart-speaker-example.yaml", "media_player.smart_speaker")], |
| 236 | +) |
| 237 | +async def test_pause_media_player( |
| 238 | + hass: HomeAssistant, setup_integration: None, test_entity: str |
| 239 | +) -> None: |
| 240 | + """Test smart speaker as a media player.""" |
| 241 | + |
| 242 | + state = hass.states.get(test_entity) |
| 243 | + assert state |
| 244 | + assert state.state == "playing" |
| 245 | + assert state.attributes == { |
| 246 | + "friendly_name": "Smart Speaker", |
| 247 | + "device_class": "speaker", |
| 248 | + "volume_level": 0.5, |
| 249 | + "supported_features": 22461, |
| 250 | + "media_track": 0, |
| 251 | + } |
| 252 | + |
| 253 | + await hass.services.async_call( |
| 254 | + MEDIA_PLAYER_DOMAIN, |
| 255 | + SERVICE_MEDIA_PAUSE, |
| 256 | + service_data={ATTR_ENTITY_ID: test_entity}, |
| 257 | + blocking=True, |
| 258 | + ) |
| 259 | + await hass.async_block_till_done() |
| 260 | + state = hass.states.get(test_entity) |
| 261 | + assert state |
| 262 | + assert state.state == "paused" |
0 commit comments