diff --git a/homeassistant/components/roku/manifest.json b/homeassistant/components/roku/manifest.json index 276fe2332f5..a5bed4530a8 100644 --- a/homeassistant/components/roku/manifest.json +++ b/homeassistant/components/roku/manifest.json @@ -2,7 +2,7 @@ "domain": "roku", "name": "Roku", "documentation": "https://www.home-assistant.io/integrations/roku", - "requirements": ["rokuecp==0.4.2"], + "requirements": ["rokuecp==0.5.0"], "ssdp": [ { "st": "roku:ecp", diff --git a/requirements_all.txt b/requirements_all.txt index ac3981f3ea3..41be4d3c5c2 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -1890,7 +1890,7 @@ rjpl==0.3.5 rocketchat-API==0.6.1 # homeassistant.components.roku -rokuecp==0.4.2 +rokuecp==0.5.0 # homeassistant.components.roomba roombapy==1.6.1 diff --git a/requirements_test_all.txt b/requirements_test_all.txt index 50feabcaead..b250164138e 100644 --- a/requirements_test_all.txt +++ b/requirements_test_all.txt @@ -802,7 +802,7 @@ rflink==0.0.52 ring_doorbell==0.6.0 # homeassistant.components.roku -rokuecp==0.4.2 +rokuecp==0.5.0 # homeassistant.components.roomba roombapy==1.6.1 diff --git a/tests/components/roku/__init__.py b/tests/components/roku/__init__.py index e3c4c8ce27c..695575ddb36 100644 --- a/tests/components/roku/__init__.py +++ b/tests/components/roku/__init__.py @@ -33,6 +33,7 @@ def mock_connection( app: str = "roku", host: str = HOST, power: bool = True, + media_state: str = "close", error: bool = False, server_error: bool = False, ) -> None: @@ -89,6 +90,12 @@ def mock_connection( headers={"Content-Type": "text/xml"}, ) + aioclient_mock.get( + f"{roku_url}/query/media-player", + text=load_fixture(f"roku/media-player-{media_state}.xml"), + headers={"Content-Type": "text/xml"}, + ) + aioclient_mock.post( re.compile(f"{roku_url}/keypress/.*"), text="OK", ) @@ -145,6 +152,7 @@ async def setup_integration( unique_id: str = UPNP_SERIAL, error: bool = False, power: bool = True, + media_state: str = "close", server_error: bool = False, skip_entry_setup: bool = False, ) -> MockConfigEntry: @@ -161,6 +169,7 @@ async def setup_integration( host=host, error=error, power=power, + media_state=media_state, server_error=server_error, ) await hass.config_entries.async_setup(entry.entry_id) diff --git a/tests/fixtures/roku/active-app-pluto.xml b/tests/fixtures/roku/active-app-pluto.xml new file mode 100644 index 00000000000..cb3b85dc51c --- /dev/null +++ b/tests/fixtures/roku/active-app-pluto.xml @@ -0,0 +1,4 @@ + + + Pluto TV - It's Free TV + diff --git a/tests/fixtures/roku/apps-tv.xml b/tests/fixtures/roku/apps-tv.xml index 93452c22235..e5862268d90 100644 --- a/tests/fixtures/roku/apps-tv.xml +++ b/tests/fixtures/roku/apps-tv.xml @@ -10,4 +10,5 @@ Free FrameChannel Service Mediafly Pandora + Pluto TV - It's Free TV diff --git a/tests/fixtures/roku/apps.xml b/tests/fixtures/roku/apps.xml index 416da25091e..477304c09e8 100644 --- a/tests/fixtures/roku/apps.xml +++ b/tests/fixtures/roku/apps.xml @@ -7,4 +7,5 @@ Free FrameChannel Service Mediafly Pandora + Pluto TV - It's Free TV diff --git a/tests/fixtures/roku/media-player-close.xml b/tests/fixtures/roku/media-player-close.xml new file mode 100644 index 00000000000..0f542941d8c --- /dev/null +++ b/tests/fixtures/roku/media-player-close.xml @@ -0,0 +1,5 @@ + + + + false + diff --git a/tests/fixtures/roku/media-player-live.xml b/tests/fixtures/roku/media-player-live.xml new file mode 100644 index 00000000000..62d819f228c --- /dev/null +++ b/tests/fixtures/roku/media-player-live.xml @@ -0,0 +1,12 @@ + + + + + + + 73313 ms + 95000 ms + true + 25106 ms + + diff --git a/tests/fixtures/roku/media-player-pause.xml b/tests/fixtures/roku/media-player-pause.xml new file mode 100644 index 00000000000..a771208ef57 --- /dev/null +++ b/tests/fixtures/roku/media-player-pause.xml @@ -0,0 +1,12 @@ + + + + + + + 313813 ms + 6496762 ms + false + 15000 ms + + diff --git a/tests/fixtures/roku/media-player-play.xml b/tests/fixtures/roku/media-player-play.xml new file mode 100644 index 00000000000..eceb3ce59a2 --- /dev/null +++ b/tests/fixtures/roku/media-player-play.xml @@ -0,0 +1,12 @@ + + + + + + + 38813 ms + 6496762 ms + false + 15000 ms + +