Beispiel #1
0
 def __init__(self):
     super(NavigationBarPage, self).__init__()
     self.leads = ElementById("nav-item-leads")
     self.settings = ElementById("nav-settings")
     self.add_menu = ElementById("global-add")
     self.lead_in_add_menu = ElementByXpath(
         "//*[@data-role='menu-item' and contains(. , 'Lead')]")
Beispiel #2
0
class LeadsSettingsPage(AbstractPage):
    def __init__(self):
        super(LeadsSettingsPage, self).__init__()
        self.lead_statuses = ElementByXpath("//*[@data-toggle='lead-status']")
        self.edit_status_button_xpath = "//*[text()='{}']/../..//button[text()='Edit']"
        self.status_name_field_path = "//input[@value='{}']"
        self.save_status_button = ElementByXpath(
            "//*[text()='Edit Lead Status']/../../.."
            "//button[contains(@class, 'save')]")

    def click_lead_statuses(self):
        self.lead_statuses.click()

    def click_edit_lead_status(self, status_name: str):
        edit_lead_status_button = ElementByXpath(
            self.edit_status_button_xpath.format(status_name))
        edit_lead_status_button.click()

    def change_status_name(self, old_name: str, new_name: str):
        status_name_field = ElementByXpath(
            self.status_name_field_path.format(old_name))
        status_name_field.set_value(new_name)

    def click_save_status_button(self):
        self.save_status_button.click()
Beispiel #3
0
 def __init__(self):
     super(LeadsSettingsPage, self).__init__()
     self.lead_statuses = ElementByXpath("//*[@data-toggle='lead-status']")
     self.edit_status_button_xpath = "//*[text()='{}']/../..//button[text()='Edit']"
     self.status_name_field_path = "//input[@value='{}']"
     self.save_status_button = ElementByXpath(
         "//*[text()='Edit Lead Status']/../../.."
         "//button[contains(@class, 'save')]")
 def __init__(self):
     super(AddLeadFormPage, self).__init__()
     self.first_name = ElementByXpath(
         "//*[@data-action='lead-first-name-input']//input")
     self.last_name = ElementByXpath(
         "//*[@data-action='lead-last-name-input']//input")
     self.company_name = ElementByXpath(
         "//*[@data-action='lead-company-name-dropdown']//input")
     self.save_and_visit_button = ElementByXpath(
         "//button[@data-action='save-and-visit']")
Beispiel #5
0
class NavigationBarPage(AbstractPage):
    def __init__(self):
        super(NavigationBarPage, self).__init__()
        self.leads = ElementById("nav-item-leads")
        self.settings = ElementById("nav-settings")
        self.add_menu = ElementById("global-add")
        self.lead_in_add_menu = ElementByXpath(
            "//*[@data-role='menu-item' and contains(. , 'Lead')]")

    def click_leads_button(self):
        self.leads.click()

    def click_settings_button(self):
        self.settings.click()

    def open_add_menu(self):
        self.add_menu.click()

    def click_lead_in_add_menu(self):
        self.open_add_menu()
        self.lead_in_add_menu.click()
Beispiel #6
0
class LeadsPage(AbstractPage):
    def __init__(self):
        super(LeadsPage, self).__init__()
        self.lead_xpath = "//*[@class='NUZ--IndexItemRow--IndexItemRow' and contains(.,'{}')]"
        self.filters_button = ElementByXpath("//button[contains(.,'Filters')]")
        self.clear_all_filters_button = ElementByXpath(
            "//button[contains(@class,'FiltersLayoutHeader--clearButton')]")

    def select_lead_by_name(self, lead_name: str):
        ElementByXpath(self.lead_xpath.format(lead_name)).click()

    def click_clear_all_filters_button(self):
        self.clear_all_filters_button.click()

    def click_filters_button(self):
        self.filters_button.click()

    def is_clear_all_filters_button_displayed(self) -> bool:
        return self.clear_all_filters_button.is_displayed()

    def is_lead_on_list(self, lead_name: str):
        lead = ElementByXpath(self.lead_xpath.format(lead_name))
        return lead.is_displayed()
class AddLeadFormPage(AbstractPage):
    def __init__(self):
        super(AddLeadFormPage, self).__init__()
        self.first_name = ElementByXpath(
            "//*[@data-action='lead-first-name-input']//input")
        self.last_name = ElementByXpath(
            "//*[@data-action='lead-last-name-input']//input")
        self.company_name = ElementByXpath(
            "//*[@data-action='lead-company-name-dropdown']//input")
        self.save_and_visit_button = ElementByXpath(
            "//button[@data-action='save-and-visit']")

    def set_first_name(self, first_name: str):
        self.first_name.set_value(first_name)

    def set_last_name(self, last_name: str):
        self.last_name.set_value(last_name)

    def set_company_name(self, company_name: str):
        self.company_name.set_value(company_name)

    def click_save_and_visit_button(self):
        self.save_and_visit_button.click()
Beispiel #8
0
 def change_status_name(self, old_name: str, new_name: str):
     status_name_field = ElementByXpath(
         self.status_name_field_path.format(old_name))
     status_name_field.set_value(new_name)
Beispiel #9
0
 def click_edit_lead_status(self, status_name: str):
     edit_lead_status_button = ElementByXpath(
         self.edit_status_button_xpath.format(status_name))
     edit_lead_status_button.click()
Beispiel #10
0
 def __init__(self):
     super(LeadsPage, self).__init__()
     self.lead_xpath = "//*[@class='NUZ--IndexItemRow--IndexItemRow' and contains(.,'{}')]"
     self.filters_button = ElementByXpath("//button[contains(.,'Filters')]")
     self.clear_all_filters_button = ElementByXpath(
         "//button[contains(@class,'FiltersLayoutHeader--clearButton')]")
Beispiel #11
0
 def is_lead_on_list(self, lead_name: str):
     lead = ElementByXpath(self.lead_xpath.format(lead_name))
     return lead.is_displayed()
Beispiel #12
0
 def select_lead_by_name(self, lead_name: str):
     ElementByXpath(self.lead_xpath.format(lead_name)).click()