import pytest URL = "https://zengzhi.ipmph.com/#/bookPreview?eyJlbmNyeXB0IjoiRDB6eGU1dnNHMVJMVXBXMWlxQnMxc2EvR00zL2dIVTZPVDVCQy9UU3ZxRmsvSjNkQkwrVmxBdU54K1lYZGE4NjNIS1JkM2U3TkRYWGQycTV4dG1xRWIxMVloMmVuVEw5SlU1c3NmS2xMcDhYZ1JqRjF5WGl6SEQrVWRwNC9hL0VSU0VMcUZCcTM0YWVRODNQRHB1TXJWd3RERUVvN1lTVlNodXVpUFViVnM4PSIsIml2Ijp7IndvcmRzIjpbMTE5MjI3OTM5LDE4ODE0MDk1NCwyODMyOTMwMTE3LDE0MzQyMjIyNzBdLCJzaWdCeXRlcyI6MTZ9fQ==" SUPPORTED_CSS = "video#myVideo_html5_api" UNSUPPORTED_CSS = ".noflash" IFRAME_CSS = "iframe[src*=videoM3u8]" VPN_MESSAGE = "Possibly region-locked. Please try again using a VPN set to Hong Kong." @pytest.mark.asyncio @pytest.mark.with_interventions async def test_enabled(client): await client.navigate(URL, wait="none") try: client.switch_to_frame(client.await_css(IFRAME_CSS, timeout=45)) except Exception: pytest.skip(VPN_MESSAGE) return client.await_css(SUPPORTED_CSS, is_displayed=True, timeout=45) assert not client.find_css(UNSUPPORTED_CSS, is_displayed=True) @pytest.mark.asyncio @pytest.mark.without_interventions async def test_disabled(client): await client.navigate(URL, wait="none") try: client.await_css(UNSUPPORTED_CSS, is_displayed=True, timeout=45) except Exception: pytest.skip(VPN_MESSAGE) return assert not client.find_css(SUPPORTED_CSS, is_displayed=True)