@@ -0,0 +1,47 @@
|
||||
"""Playwright E2E: mobile viewport /recipes — dashboard steps, dispenser flow."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import pytest
|
||||
|
||||
from tests.e2e.conftest import E2E_DISP_ID, E2E_DISP_RECIPE_1, E2E_PERIOD_A
|
||||
|
||||
pytestmark = pytest.mark.e2e
|
||||
|
||||
MOBILE_VIEWPORT = {"width": 390, "height": 844}
|
||||
|
||||
|
||||
def test_mobile_dispenser_period_recipe_steps(authenticated_page) -> None:
|
||||
page = authenticated_page
|
||||
page.set_viewport_size(MOBILE_VIEWPORT)
|
||||
page.locator(f'[data-action="select-dispenser"][data-dispenser-id="{E2E_DISP_ID}"]').click()
|
||||
page.wait_for_timeout(400)
|
||||
assert page.evaluate(
|
||||
"() => document.body.classList.contains('dashboard-mobile-step-periods')"
|
||||
)
|
||||
page.locator(f'[data-action="select-period"][data-period-id="{E2E_PERIOD_A}"]').click()
|
||||
page.wait_for_selector(
|
||||
f'[data-action="select-recipe"][data-recipe-id="{E2E_DISP_RECIPE_1}"]', timeout=10000
|
||||
)
|
||||
assert page.evaluate(
|
||||
"() => document.body.classList.contains('dashboard-mobile-step-recipes')"
|
||||
)
|
||||
|
||||
|
||||
def test_mobile_back_from_recipes_to_periods(authenticated_page) -> None:
|
||||
page = authenticated_page
|
||||
page.set_viewport_size(MOBILE_VIEWPORT)
|
||||
page.locator(f'[data-action="select-dispenser"][data-dispenser-id="{E2E_DISP_ID}"]').click()
|
||||
page.locator(f'[data-action="select-period"][data-period-id="{E2E_PERIOD_A}"]').click()
|
||||
page.wait_for_selector('[data-action="mobile-dashboard-back"]', timeout=10000)
|
||||
page.locator('[data-action="mobile-dashboard-back"]').click()
|
||||
page.wait_for_timeout(400)
|
||||
assert page.evaluate(
|
||||
"() => document.body.classList.contains('dashboard-mobile-step-periods')"
|
||||
)
|
||||
|
||||
|
||||
def test_mobile_drag_handles_present_on_recipe_list(two_periods_setup) -> None:
|
||||
page = two_periods_setup
|
||||
page.set_viewport_size(MOBILE_VIEWPORT)
|
||||
assert page.locator('[data-action="recipe-drag-handle"]').count() >= 2
|
||||
Reference in New Issue
Block a user