27 lines
1.2 KiB
Python
27 lines
1.2 KiB
Python
from playwright.sync_api import expect
|
|
|
|
from .base import BasePage
|
|
|
|
|
|
class TicketNoticesPage(BasePage):
|
|
def open_customer_panel(self):
|
|
if self.page.get_by_role('button', name='اطلاعات مشتری', exact=True).is_visible():
|
|
self.page.get_by_role('button', name='اطلاعات مشتری', exact=True).click()
|
|
expect(self.page.locator('#customer-info')).to_be_in_viewport()
|
|
|
|
def toggle_notices(self):
|
|
self.page.locator('.ticket-notices > summary').click()
|
|
|
|
def open_notice(self, subject):
|
|
self.page.get_by_role('link').filter(has=self.page.get_by_text(subject, exact=True)).click()
|
|
|
|
def open_all(self):
|
|
self.page.get_by_role('link', name='بیشتر همه اعلامیههای این مشتری').click()
|
|
|
|
def expect_closed(self):
|
|
expect(self.page.get_by_role('link', name='ایجاد اعلامیه واریز', exact=True)).to_be_hidden()
|
|
|
|
def expect_open(self):
|
|
expect(self.page.get_by_role('link', name='ایجاد اعلامیه واریز', exact=True)).to_be_visible()
|
|
expect(self.page.get_by_role('list', name='اعلامیههای اخیر مشتری').get_by_role('link')).to_have_count(3)
|