estelam ticket, varizha , others
This commit is contained in:
1 parent
35a1ec1794
commit
6b546aad76
71 files changed
+2865
-191
No files matched your search
@@ -0,0 +1,89 @@
|
||||
from pathlib import Path
|
||||
|
||||
from django.urls import reverse
|
||||
from playwright.sync_api import expect
|
||||
|
||||
from tests.e2e.pages.base import BasePage
|
||||
|
||||
|
||||
class DispatchWorkspacePage(BasePage):
|
||||
@property
|
||||
def review_dialog(self):
|
||||
return self.page.get_by_role("dialog", name="بررسی نهایی ارسال گروهی")
|
||||
|
||||
def _activate(self, control, destination, *, hidden=False):
|
||||
control.click()
|
||||
if hidden:
|
||||
expect(destination).to_be_hidden()
|
||||
else:
|
||||
expect(destination).to_be_visible()
|
||||
|
||||
def open_composer(self):
|
||||
self.goto(reverse("staff_tickets:dispatch_create"))
|
||||
self.page.get_by_role("tab", name="ارسال جدید").wait_for(state="visible")
|
||||
|
||||
def open_history(self):
|
||||
self.page.get_by_role("tab", name="سوابق ارسال").click()
|
||||
|
||||
def return_to_composer(self):
|
||||
self.page.get_by_role("tab", name="ارسال جدید").click()
|
||||
|
||||
def compose(self, unit, group, category, subject, body):
|
||||
self.page.get_by_label("واحد ارسالکننده").select_option(str(unit.pk))
|
||||
self.page.get_by_label("گروه مخاطبان", exact=False).select_option(str(group.pk))
|
||||
self.page.get_by_label("دستهبندی", exact=False).select_option(str(category.pk))
|
||||
self.page.get_by_label("موضوع استعلام یا پیام", exact=False).fill(subject)
|
||||
self.page.get_by_label("متن پیام", exact=False).fill(body)
|
||||
|
||||
def review(self):
|
||||
self._activate(self.page.get_by_role("button", name="بررسی و ادامه"), self.review_dialog)
|
||||
|
||||
def cancel_review(self):
|
||||
self._activate(self.review_dialog.get_by_role("button", name="بازگشت و ویرایش"), self.review_dialog, hidden=True)
|
||||
|
||||
def send(self):
|
||||
self._activate(
|
||||
self.review_dialog.get_by_role("button", name="تأیید و ارسال گروهی"),
|
||||
self.page.get_by_role("heading", name="وضعیت پیامک، مشاهده و پاسخ"),
|
||||
)
|
||||
|
||||
def open_report(self, dispatch):
|
||||
self.goto(reverse("staff_tickets:dispatch_detail", args=[dispatch.public_id]))
|
||||
|
||||
def filter_recipients(self, label):
|
||||
self.page.get_by_label("نمایش مخاطبان").select_option(label=label)
|
||||
|
||||
def search_recipient(self, text):
|
||||
self.page.get_by_role("searchbox", name="جستجوی مخاطب").fill(text)
|
||||
|
||||
def reset_recipients(self):
|
||||
self.page.get_by_role("button", name="پاک کردن فیلتر", exact=True).click()
|
||||
|
||||
def visible_recipients(self):
|
||||
return self.page.locator("[data-recipient-row]:visible")
|
||||
|
||||
def open_conversation(self):
|
||||
self.page.locator(".dispatch-reply-link").first.click()
|
||||
|
||||
def review_opening(self):
|
||||
self._activate(self.page.get_by_role("link", name="بازگشایی همه پاسخها", exact=True),
|
||||
self.page.get_by_role("heading", name="تأیید بازگشایی همه پاسخها"))
|
||||
|
||||
def confirm_opening(self):
|
||||
self._activate(self.page.get_by_role("button", name="تأیید و بازگشایی همه پاسخها"),
|
||||
self.page.get_by_role("heading", name="پاسخها بازگشایی شدهاند"))
|
||||
|
||||
def choose_response_mode(self, label):
|
||||
self.page.get_by_role("radio", name=label, exact=True).check()
|
||||
|
||||
@property
|
||||
def opening_sms(self):
|
||||
return self.page.get_by_role("checkbox", name="اطلاعرسانی بازگشایی با پیامک", exact=True)
|
||||
|
||||
def expect_fits_viewport(self):
|
||||
assert self.page.evaluate("document.documentElement.scrollWidth <= document.documentElement.clientWidth + 1")
|
||||
|
||||
def save_screenshot(self, name):
|
||||
directory = Path("test-results/dispatch-design")
|
||||
directory.mkdir(parents=True, exist_ok=True)
|
||||
self.page.screenshot(path=str(directory / name), full_page=True)
|
||||
@@ -5,6 +5,13 @@ from .base import BasePage
|
||||
|
||||
|
||||
class StaffPaymentsPage(BasePage):
|
||||
@property
|
||||
def daily_summary(self):
|
||||
return self.page.get_by_role('region', name='وضعیت امروز')
|
||||
|
||||
def open_summary_definitions(self):
|
||||
self.daily_summary.locator('summary').click()
|
||||
|
||||
def open_desk(self, parameters=''):
|
||||
self.goto(reverse('staff_payments:desk') + parameters)
|
||||
|
||||
|
||||
Reference in new issue
Block a user