test_1923656_ipmph_com.py (1379B)
1 import pytest 2 3 URL = "https://zengzhi.ipmph.com/#/bookPreview?eyJlbmNyeXB0IjoiRDB6eGU1dnNHMVJMVXBXMWlxQnMxc2EvR00zL2dIVTZPVDVCQy9UU3ZxRmsvSjNkQkwrVmxBdU54K1lYZGE4NjNIS1JkM2U3TkRYWGQycTV4dG1xRWIxMVloMmVuVEw5SlU1c3NmS2xMcDhYZ1JqRjF5WGl6SEQrVWRwNC9hL0VSU0VMcUZCcTM0YWVRODNQRHB1TXJWd3RERUVvN1lTVlNodXVpUFViVnM4PSIsIml2Ijp7IndvcmRzIjpbMTE5MjI3OTM5LDE4ODE0MDk1NCwyODMyOTMwMTE3LDE0MzQyMjIyNzBdLCJzaWdCeXRlcyI6MTZ9fQ==" 4 5 SUPPORTED_CSS = "video#myVideo_html5_api" 6 UNSUPPORTED_CSS = ".noflash" 7 IFRAME_CSS = "iframe[src*=videoM3u8]" 8 9 VPN_MESSAGE = "Possibly region-locked. Please try again using a VPN set to Hong Kong." 10 11 12 @pytest.mark.asyncio 13 @pytest.mark.with_interventions 14 async def test_enabled(client): 15 await client.navigate(URL, wait="none") 16 try: 17 client.switch_to_frame(client.await_css(IFRAME_CSS, timeout=30)) 18 except Exception: 19 pytest.skip(VPN_MESSAGE) 20 return 21 client.await_css(SUPPORTED_CSS, is_displayed=True, timeout=30) 22 assert not client.find_css(UNSUPPORTED_CSS, is_displayed=True) 23 24 25 @pytest.mark.asyncio 26 @pytest.mark.without_interventions 27 async def test_disabled(client): 28 await client.navigate(URL, wait="none") 29 try: 30 client.await_css(UNSUPPORTED_CSS, is_displayed=True, timeout=30) 31 except Exception: 32 pytest.skip(VPN_MESSAGE) 33 return 34 assert not client.find_css(SUPPORTED_CSS, is_displayed=True)