예제 #1
0
 def __init__(self, driver):
     super(DropdownSettings, self).__init__(driver)
     self.edit = base.Button(driver, self._locator.DROPDOWN_SETTINGS_EDIT)
     self.permalink = base.Button(driver,
                                  self._locator.DROPDOWN_SETTINGS_PERMALINK)
     self.delete = base.Button(driver,
                               self._locator.DROPDOWN_SETTINGS_DELETE)
예제 #2
0
 def __init__(self, driver):
     super(ControlsModal, self).__init__(driver)
     # labels
     self.modal_title = base.Label(self.modal_elem,
                                   self._locators.MODAL_TITLE)
     self.title = base.Label(self.modal_elem, self._locators.TITLE)
     self.description = base.Label(self.modal_elem,
                                   self._locators.DESCRIPTION)
     self.test_plan = base.Label(self.modal_elem, self._locators.TEST_PLAN)
     self.notes = base.Label(self.modal_elem, self._locators.NOTES)
     self.code = base.Label(self.modal_elem, self._locators.CODE)
     self.kind_or_nature = base.Label(self.modal_elem,
                                      self._locators.KIND_OR_NATURE)
     self.fraud_related = base.Label(self.modal_elem,
                                     self._locators.FRAUD_RELATED)
     self.frequency = base.Label(self.modal_elem, self._locators.FREQUENCY)
     self.assertions = base.Label(self.modal_elem,
                                  self._locators.ASSERTIONS)
     self.admin = base.Label(self.modal_elem, self._locators.ADMIN)
     self.significance = base.Label(self.modal_elem,
                                    self._locators.SIGNIFICANCE)
     self.type_or_means = base.Label(self.modal_elem,
                                     self._locators.TYPE_OR_MEANS)
     self.categories = base.Label(self.modal_elem,
                                  self._locators.CATEGORIES)
     self.state = base.Label(self.modal_elem, self._locators.STATE)
     self.ui_description = base.Iframe(self.modal_elem.parent,
                                       self._locators.UI_DESCRIPTION)
     self.ui_test_plan = base.Iframe(self.modal_elem.parent,
                                     self._locators.UI_TEST_PLAN)
     self.ui_notes = base.Iframe(self.modal_elem.parent,
                                 self._locators.UI_NOTES)
     self.ui_code = base.TextInputField(self.modal_elem,
                                        self._locators.UI_CODE)
     # multi input fields
     self.ref_url = base.MultiInputField(self.modal_elem.parent,
                                         self._locators.REF_URL_CSS)
     # datepickers
     self.ui_effective_date = base.DatePicker(
         self.modal_elem, self._locators.EFFECTIVE_DATE,
         self._locators.DATEPICKER_EFFECTIVE_DATE)
     # dropdowns
     self.ui_kind_or_nature = base.Dropdown(
         self.modal_elem, self._locators.DROPDOWN_KIND_OR_NATURE)
     self.ui_fraud_related = base.Dropdown(
         self.modal_elem, self._locators.DROPDOWN_FRAUD_RELATED)
     self.ui_type_or_means = base.Dropdown(
         self.modal_elem, self._locators.DROPDOWN_TYPE_OR_MEANS)
     self.ui_frequency = base.Dropdown(self.modal_elem,
                                       self._locators.DROPDOWN_FREQUENCY)
     # selectable lists
     self.selectable_assertions = base.Selectable(
         self.modal_elem, self._locators.SELECTABLE_ASSERTIONS)
     self.selectable_categories = base.Selectable(
         self.modal_elem, self._locators.SELECTABLE_CATEGORIES)
     # buttons
     self.button_add_owner = base.Button(self.modal_elem,
                                         self._locators.BUTTON_ADD_OWNER)
     self.button_hide_all_optional_fields = base.Button(
         self.modal_elem, self._locators.BUTTON_HIDE_ALL_OPTIONAL_FIELDS)
예제 #3
0
 def __init__(self, driver):
     super(_Workflows, self).__init__(driver)
     self.button_active = base.Button(
         self._driver, locator.LhnMenu.BUTTON_WORKFLOWS_ACTIVE)
     self.button_inactive = base.Button(
         self._driver, locator.LhnMenu.BUTTON_WORKFLOWS_INACTIVE)
     self.button_draft = base.Button(self._driver,
                                     locator.LhnMenu.BUTTON_WORKFLOWS_DRAFT)
예제 #4
0
 def __init__(self, driver):
     super(ExportPage, self).__init__(driver)
     self.export_page = self._driver.find_element(
         *self._locators.EXPORT_PAGE_CSS)
     self.add_obj_type_btn = base.Button(
         self.export_page, self._locators.ADD_OBJECT_TYPE_BTN_XPATH)
     self.export_objs_btn = base.Button(
         self.export_page, self._locators.EXPORT_OBJECTS_BTN_CSS)
예제 #5
0
 def __init__(self, driver):
   super(UserList, self).__init__(driver)
   self.button_logout = base.Button(
       self._driver, self.locators.BUTTON_LOGOUT)
   self.notifications = base.Label(
       self._driver, self.locators.NOTIFICATIONS)
   self.checkbox_daily_digest = base.Checkbox(
       self._driver, self.locators.CHECKBOX_DAILY_DIGEST)
   self.button_help = base.Button(
       self._driver, self.locators.BUTTON_HELP)
예제 #6
0
 def __init__(self, driver):
     super(ExportPage, self).__init__(driver)
     self.export_page = self._driver.find_element(
         *self._locators.EXPORT_PAGE_CSS)
     self.export_panels = self.get_list_export_panels()
     self.export_format_dd = base.DropdownStatic(
         self.export_page, self._locators.EXPORT_FORMAT_DD_CSS)
     self.add_obj_type_btn = base.Button(
         self.export_page, self._locators.ADD_OBJECT_TYPE_BTN_CSS)
     self.export_objs_btn = base.Button(
         self.export_page, self._locators.EXPORT_OBJECTS_BTN_CSS)
예제 #7
0
 def set_dropdown_url(self, url):
   """Set evidence url via dropdown."""
   base.Button(
       self._driver,
       locator.ModalSetValueForAsmtCA.BUTTON_ADD_URL).click()
   base.TextInputField(
       self._driver,
       locator.ModalSetValueForAsmtCA.INPUT_EVIDENCE_URL).enter_text(
       url)
   base.Button(
       self._driver,
       locator.ModalSetValueForAsmtCA.BUTTON_CONFIRM_URL).click()
예제 #8
0
 def __init__(self, driver):
   super(Dashboard, self).__init__(driver)
   self.button_start_new_program = base.Button(
       self._driver, self._locators.BUTTON_START_NEW_PROGRAM)
   self.button_start_new_audit = base.Button(
       self._driver, self._locators.BUTTON_START_NEW_AUDIT)
   self.button_start_new_workflow = base.Button(
       self._driver, self._locators.BUTTON_START_NEW_WORKFLOW)
   self.button_create_new_object = base.Button(
       self._driver, self._locators.BUTTON_CREATE_NEW_OBJECT)
   self.button_all_objects = base.Button(
       self._driver, self._locators.BUTTON_ALL_OBJECTS)
예제 #9
0
 def __init__(self, driver):
     super(UserList, self).__init__(driver)
     self.button_logout = base.Button(self._driver,
                                      self.locators.BUTTON_LOGOUT)
     self.notifications = base.Label(self._driver,
                                     self.locators.NOTIFICATIONS)
     self.checkbox_daily_digest = base.Checkbox(
         self._driver, self.locators.CHECKBOX_DAILY_DIGEST)
     self.button_admin_dashboard = base.Button(
         self._driver, self.locators.BUTTON_ADMIN_DASHBOARD)
     self.button_help = base.Button(self._driver, self.locators.BUTTON_HELP)
     self.button_data_export = base.Button(self._driver,
                                           self.locators.BUTTON_DATA_EXPORT)
예제 #10
0
 def _refresh_elements(self):
     self.button_dashboard = base.Button(self._driver,
                                         self.locators.BUTTON_DASHBOARD)
     self.button_search = base.Button(self._driver,
                                      self.locators.BUTTON_SEARCH)
     self.button_my_tasks = base.Button(self._driver,
                                        self.locators.BUTTON_MY_TASKS)
     self.button_all_objects = base.Button(self._driver,
                                           self.locators.BUTTON_ALL_OBJECTS)
     self.toggle_user_dropdown = base.Toggle(
         self._driver, self.locators.TOGGLE_USER_DROPDOWN)
     self.toggle_lhn_menu = base.Toggle(self._driver,
                                        self.locators.TOGGLE_LHN)
예제 #11
0
 def generate_and_close(self):
     """Save this objects and close modal."""
     self.button_generate_and_close = base.Button(
         self._driver, self._locator_button_generate)
     self.button_generate_and_close.click()
     selenium_utils.get_when_invisible(self._driver,
                                       self._locator_button_generate)
예제 #12
0
    def open_create(self):
        """Click to Create button on Tree View to open new object creation modal.

    Return: lib.page.modal.create_new_object."create_obj_cls"
    """
        base.Button(self._driver, self._locators.CREATE_BTN_CSS).click()
        return self.create_obj_cls(self._driver)
예제 #13
0
 def open_tree_view_3bbs(self):
     """Click to 3BBS button on Tree View to open modal for further actions.
 """
     _locator_3bbs = (By.CSS_SELECTOR,
                      self._locators.BUTTON_3BBS.format(self.widget_name))
     self.button_3bbs = base.Button(self._driver, _locator_3bbs)
     self.button_3bbs.click()
예제 #14
0
 def _confirm_map_selected(self):
     """Select Map Selected button to confirm map selected objects to
 source object.
 """
     base.Button(self._driver, self._locators.BUTTON_MAP_SELECTED).click()
     selenium_utils.get_when_invisible(self._driver,
                                       self._locators.BUTTON_MAP_SELECTED)
예제 #15
0
    def __init__(self, driver):
        super(_Modal, self).__init__(driver)

        self.ui_attribute_title = base.TextInputField(
            self._driver, self._locator.UI_ATTRIBUTE_TITLE)
        self.button_submit = base.Button(self._driver,
                                         self._locator.BUTTON_SAVE_AND_CLOSE)
예제 #16
0
 def __init__(self):
     super(CompareUpdateObjectModal, self).__init__()
     self.title_modal = base.Label(self._driver, self._locators.MODAL_TITLE)
     self.confirmation_text = base.Label(self._driver,
                                         self._locators.CONFIRMATION_TEXT)
     self.button_update = base.Button(self._driver,
                                      self._locators.BUTTON_CONFIRM)
예제 #17
0
 def save_set_visible_fields(self):
     """Save visible fields to display objects on the tree view."""
     _locator_set_fields = (By.CSS_SELECTOR,
                            self._locators.BUTTON_SET_FIELDS.format(
                                self.widget_name))
     self.button_set_fields = base.Button(self._driver, _locator_set_fields)
     self.button_set_fields.click()
예제 #18
0
    def open_3bbs(self):
        """Click to 3BBS button on Tree View to open tree view 3BBS modal.

    Return: lib.element.tree_view."obj_name"DropdownSettings
    """
        base.Button(self._driver, self._locators.BTN_3BBS_CSS).click()
        return self.dropdown_settings_cls(self._driver, self.obj_name)
예제 #19
0
 def open_create(self):
     """Clicks on Create button on Tree View to open new object creation modal.
 """
     base.Button(self._driver, self._locators.CREATE_BTN_CSS).click()
     if self.obj_name == objects.ASSESSMENT_TEMPLATES:
         unified_mapper.CloneOrCreateAssessmentTemplatesModal(
             self._driver, self.obj_name).create_asmt_tmpl_btn.click()
예제 #20
0
 def __init__(self, driver):
   super(_Modal, self).__init__(driver)
   self.modal_window = self._driver.find_element(*self._locators.MODAL_CSS)
   self.attr_title_ui = base.TextInputField(
       self.modal_window, self._locators.ATTR_TITLE_UI_CSS)
   self.submit_btn = base.Button(
       self.modal_window, self._locators.SAVE_AND_CLOSE_BTN_CSS)
예제 #21
0
 def __init__(self, driver, obj_name, is_versions_widget=False):
     self.obj_name = obj_name
     self._locators_filter = locator.BaseWidgetGeneric
     self._locators_widget = factory.get_locator_widget(
         self.obj_name.upper())
     if is_versions_widget:
         locator_parts = self._locators_widget[1].split("\"")
         locator_parts[1] += "_version"
         self._locators_widget = (self._locators_widget[0],
                                  "\"".join(locator_parts))
     self.info_widget_cls = factory.get_cls_widget(object_name=obj_name,
                                                   is_info=True)
     # Filter
     self.button_help = base.Button(driver,
                                    self._locators_filter.HELP_BTN_CSS)
     self.filter = base.FilterCommon(
         driver,
         text_box_locator=self._locators_filter.TXTFIELD_TO_FILTER_CSS,
         bt_submit_locator=self._locators_filter.FILTER_BTN_CSS)
     if self.obj_name not in objects.ALL_OBJS_WO_STATE_FILTERING:
         self.dropdown_states = base.DropdownStatic(
             driver, self._locators_filter.DD_CSS)
     super(Widget, self).__init__(driver)
     self._root = self._browser.element(
         class_name="widget governance treeview",
         id=objects.get_singular(self.obj_name))
     # Tree View
     self.tree_view = TreeView(driver, self.info_widget_cls, self.obj_name)
     # Tab count
     self.members_listed = None
     self.member_count = None
     self._set_members_listed()
예제 #22
0
 def save_and_add_other(self):
     """Create object and open new Create modal."""
     base.Button(self._driver,
                 self._locators.BUTTON_SAVE_AND_ADD_ANOTHER).click()
     selenium_utils.get_when_invisible(
         self._driver, self._locators.BUTTON_SAVE_AND_ADD_ANOTHER)
     return self.__class__(self._driver)
예제 #23
0
    def open_map(self):
        """Click to Map button on Tree View to open unified mapper modal.

    Return: lib.page.modal.unified_mapper.MapObjectsModal
    """
        base.Button(self._driver, self._locators.MAP_BTN_CSS).click()
        return unified_mapper.MapObjectsModal(self._driver, self.obj_name)
예제 #24
0
 def __init__(self, driver, item_text):
     super(CustomAttributesItemContent, self).__init__(driver)
     self.item_el = selenium_utils.get_when_visible(
         self._driver, self._locators.TREE_ITEM_EL_OPENED_CSS)
     self.add_btn = base.Button(self.item_el, self._locators.ADD_BTN_CSS)
     self.custom_attributes_list = []
     self._item_name = item_text
예제 #25
0
 def __init__(self, driver):
     super(BaseModal, self).__init__(driver)
     self.button_save_and_close = base.Button(driver,
                                              self._locator_button_save)
     self.ui_title = base.TextInputField(self._driver,
                                         self._locator_ui_title)
     self.ui_code = base.TextInputField(self._driver, self._locator_ui_code)
예제 #26
0
 def open_info_3bbs(self):
   """Click to 3BBS button on Info page or Info panel to open modal for
   further actions.
   Return: lib.element.widget_info.CommonDropdownSettings
   """
   base.Button(self._driver, self.locator_3bbs).click()
   return self._dropdown_settings_cls(self._driver, self.is_under_audit)
예제 #27
0
 def __init__(self, driver, obj_name):
     self.obj_name = obj_name
     self._locators_filter = factory.get_cls_locators_generic_widget(
         object_name=obj_name)
     self._locator_widget = factory.get_locator_widget(
         self.obj_name.upper())
     self.info_widget_cls = factory.get_cls_widget(object_name=obj_name,
                                                   is_info=True)
     # Filter
     self.cls_without_state_filtering = (AssessmentTemplates, )
     # Persons, Workflows, TaskGroups, Cycles, CycleTaskGroupObjectTasks
     self.button_help = base.Button(driver,
                                    self._locators_filter.BUTTON_HELP)
     self.filter = base.FilterCommon(
         driver,
         text_box_locator=self._locators_filter.TEXTFIELD_TO_FILTER,
         bt_submit_locator=self._locators_filter.BUTTON_FILTER)
     if self.__class__ not in self.cls_without_state_filtering:
         self.dropdown_states = base.DropdownStatic(
             driver,
             dropdown_locator=self._locators_filter.DROPDOWN,
             elements_locator=self._locators_filter.DROPDOWN_STATES)
     super(Widget, self).__init__(driver)
     # Tree View
     self.tree_view = TreeView(driver, self.info_widget_cls, self.obj_name)
     # Tab count
     self.members_listed = None
     self.member_count = None
     self._set_members_listed()
예제 #28
0
 def confirm_set_visible_fields(self):
     """Confirm set visible fields."""
     _locator_set_fields = (By.CSS_SELECTOR,
                            self._locators.BUTTON_SET_FIELDS.format(
                                self.widget_name))
     base.Button(self._driver, _locator_set_fields).click()
     selenium_utils.get_when_invisible(self._driver, _locator_set_fields)
예제 #29
0
 def __init__(self, driver):
     super(DeleteObjectModal, self).__init__(driver)
     self.title_modal = base.Label(driver, self._locator.MODAL_TITLE)
     self.confirmation_text = base.Label(driver,
                                         self._locator.CONFIRMATION_TEXT)
     self.title_object = base.Label(driver, self._locator.OBJECT_TITLE)
     self.button_delete = base.Button(driver, self._locator.BUTTON_DELETE)
 def open_create_obj(self):
     """Open modal from tree view to create new object."""
     _locator_create = (By.CSS_SELECTOR,
                        self._locators.BUTTON_CREATE.format(
                            self.widget_name))
     self.button_create = base.Button(self._driver, _locator_create)
     self.button_create.click()