34 lines
1.8 KiB
Python
34 lines
1.8 KiB
Python
import pytest
|
|
|
|
from tests.e2e.pages.auth import AuthenticationPage
|
|
from tests.e2e.pages.sharing import StaffSharingPage
|
|
from tests.test_staff_sharing import make_sharing_case
|
|
|
|
|
|
pytestmark = [pytest.mark.e2e, pytest.mark.django_db(transaction=True)]
|
|
|
|
|
|
@pytest.mark.parametrize("viewport", [{"width": 1280, "height": 900}, {"width": 390, "height": 844}])
|
|
def test_staff_can_share_one_message_track_opening_and_revoke(live_server, browser_page, viewport):
|
|
case = make_sharing_case()
|
|
password = "SharingTest123!"
|
|
with browser_page() as page:
|
|
page.set_viewport_size(viewport)
|
|
AuthenticationPage(page, live_server.url).login_staff(case["sender"], password)
|
|
StaffSharingPage(page, live_server.url).share_message(case["ticket"], case["selected"], case["recipient"], "بررسی رسید توسط مالی")
|
|
with browser_page() as page:
|
|
page.set_viewport_size(viewport)
|
|
AuthenticationPage(page, live_server.url).login_staff(case["recipient"], password)
|
|
sharing = StaffSharingPage(page, live_server.url)
|
|
sharing.open_received_message(case["ticket"])
|
|
sharing.expect_isolated_content(case["selected"].body, ["مکاتبه محرمانه قبل", "مکاتبه محرمانه بعد"])
|
|
shared_url = page.url
|
|
with browser_page() as page:
|
|
page.set_viewport_size(viewport)
|
|
AuthenticationPage(page, live_server.url).login_staff(case["sender"], password)
|
|
StaffSharingPage(page, live_server.url).expect_opened_and_revoke(case["ticket"], "کارشناس recipient")
|
|
with browser_page() as page:
|
|
page.set_viewport_size(viewport)
|
|
AuthenticationPage(page, live_server.url).login_staff(case["recipient"], password)
|
|
StaffSharingPage(page, live_server.url).expect_revoked_link_denied(shared_url)
|