Source code
Revision control
Copy as Markdown
Other Tools
from asyncio.exceptions import TimeoutError
import pytest
from webdriver.error import NoSuchElementException
POPUP_CSS = ".popupContent"
POPUP_CC_LINK_CSS = ".popupContent .cc-link"
async def is_popup_text_cut_off(client):
try:
await client.navigate(URL, wait="none", timeout=10, no_skip=True)
popup = client.await_css(POPUP_CSS, is_displayed=True)
cc_link = client.await_css(POPUP_CC_LINK_CSS, is_displayed=True)
return client.execute_script(
"""
const [popup, cc_link] = arguments;
return cc_link.getBoundingClientRect().top > popup.getBoundingClientRect().bottom;
""",
popup,
cc_link,
)
except (TimeoutError, NoSuchElementException):
pytest.skip("Region-locked, cannot test. Try using a VPN set to Greece.")
return False
@pytest.mark.only_platforms("android")
@pytest.mark.actual_platform_required
@pytest.mark.asyncio
@pytest.mark.with_interventions
async def test_enabled(client):
assert not await is_popup_text_cut_off(client)
@pytest.mark.only_platforms("android")
@pytest.mark.actual_platform_required
@pytest.mark.asyncio
@pytest.mark.without_interventions
async def test_disabled(client):
assert await is_popup_text_cut_off(client)