def _get_latest_filter_elements(self): """Return elements of last filter parameter""" return { "name": base.DropdownStatic( self._driver, selenium_utils.get_when_all_visible( self._driver, self._locators.FILTER_ATTRIBUTE_NAME)[-1]), "operator": base.DropdownStatic( self._driver, selenium_utils.get_when_all_visible( self._driver, self._locators.FILTER_OPERATOR)[-1]), "compare": base.DropdownStatic( self._driver, selenium_utils.get_when_all_visible( self._driver, self._locators.FILTER_ATTRIBUTE_COMPARE)[-1]), "value": base.TextInputField( self._driver, selenium_utils.get_when_all_visible( self._driver, self._locators.FILTER_ATTRIBUTE_VALUE)[-1]) }
def _select_dest_obj_type(self, obj_name, is_asmts_generation=False): """Open dropdown and select element according to destination object name. If is_asmts_generation then TextFilterDropdown, else DropdownStatic. """ if obj_name: obj_type_dropdown = base.DropdownStatic( self._driver, self._locators.OBJ_TYPE_DROPDOWN) obj_type_dropdown.select(obj_name) if is_asmts_generation: asmt_tmpl_dropdown = base.DropdownStatic( self._driver, self._locators.OBJ_TYPE_DROPDOWN,) asmt_tmpl_dropdown.select_by_label(obj_name)
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()
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()
def select_ca_dropdown_option(self, dropdown_id, option_value): """Select custom attribute dropdown option.""" dropdown_locator = (By.CSS_SELECTOR, "#form-field-{}".format(dropdown_id)) selenium_utils.get_when_clickable(self.info_widget_elem, dropdown_locator) base.DropdownStatic(self.info_widget_elem, dropdown_locator).select(option_value)
def _get_latest_filter_elements(self): """Return elements of last filter parameter""" latest_filter_elem = self._driver.find_elements( *self._locators.FILTER_ROW_CSS) latest_filter = { "name": base.DropdownAutocomplete( latest_filter_elem[-1], self._locators.FILTER_ATTRIBUTE_NAME), "compare_op": base.DropdownStatic( latest_filter_elem[-1], self._locators.FILTER_ATTRIBUTE_COMPARE), "value": base.TextInputField( latest_filter_elem[-1], self._locators.FILTER_ATTRIBUTE_VALUE), "operator": None} if len(latest_filter_elem) > 1: latest_filter["operator"] = base.DropdownStatic( self.modal_elem, selenium_utils.get_when_all_visible( self.modal_elem, self._locators.FILTER_OPERATOR)[-1]) return latest_filter
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)
def __init__(self, driver): super(CommonUnifiedMapperModal, self).__init__(driver) # labels self.title_modal = base.Label(driver, self._locators.MODAL_TITLE) self.obj_type = base.Label(driver, self._locators.OBJ_TYPE) self.filter_by_expression = base.Label( driver, self._locators.FILTER_BY_EXPRESSION) # user input elements self.filter_via_expression_text_box = base.TextInputField( driver, self._locators.FILTER_VIA_EXPRESSION_TEXT_BOX) self.filter_by_state_text_box = base.DropdownStatic( driver, self._locators.FILTER_BY_STATE_DROPDOWN, self._locators.FILTER_BY_STATE_DROPDOWN_OPTIONS)
def __init__(self, driver): super(CustomAttributeModal, self).__init__(driver) self.attribute_title = base.Label( self._driver, self._locators.ATTRIBUTE_TITLE) self.inline_help = base.Label(self._driver, self._locators.INLINE_HELP) self.attribute_type = base.Label( self._driver, self._locators.ATTRIBUTE_TYPE) self.placeholder = base.Label(self._driver, self._locators.PLACEHOLDER) self.mandatory = base.Label(self._driver, self._locators.MANDATORY) self.ui_inline_help = None self.ui_placeholder = None self.checkbox_mandatory = base.Checkbox( self._driver, self._locators.CHECKBOX_MANDATORY) self.attribute_type_selector = base.DropdownStatic( self._driver, self._locators.ATTRIBUTE_TYPE_SELECTOR) self.ui_possible_values = None
def __init__(self, driver): self.member_count = None self.cls_without_state_filtering = (AsmtTmpls, ) # Audits, Persons, Workflows, TaskGroups, Cycles, CycleTaskGroupObjectTasks self.common_filter_locators = dict( text_box_locator=self._locator_filter.TEXTFIELD_TO_FILTER, bt_submit_locator=self._locator_filter.BUTTON_FILTER, bt_clear_locator=self._locator_filter.BUTTON_RESET) self.button_help = base.Button(driver, self._locator_filter.BUTTON_HELP) self.filter = base.FilterCommon(driver, **self.common_filter_locators) if self.__class__ not in self.cls_without_state_filtering: self.dropdown_states = base.DropdownStatic( driver, dropdown_locator=self._locator_filter.DROPDOWN, elements_locator=self._locator_filter.DROPDOWN_STATES) super(Widget, self).__init__(driver) self._set_members_listed()
def __init__(self, driver): super(CustomAttributeModal, self).__init__(driver) self.attr_title_lbl = base.Label(self.modal_window, self._locators.ATTR_TITLE_LBL_CSS) self.attr_type_lbl = base.Label(self.modal_window, self._locators.ATTR_TYPE_CSS) self.attr_type_selector_dd = base.DropdownStatic( self.modal_window, self._locators.ATTR_TYPE_SELECTOR_DD_CSS) self.mandatory_lbl = base.Label(self.modal_window, self._locators.MANDATORY_LBL_CSS) self.mandatory_cb = base.Checkbox(self.modal_window, self._locators.MANDATORY_CB_CSS) self.inline_help_lbl = base.Label(self.modal_window, self._locators.INLINE_HELP_LBL_CSS) self.inline_help_ui = None self.placeholder_lbl = base.Label(self.modal_window, self._locators.PLACEHOLDER_LBL_CSS) self.placeholder_ui = None self.possible_values_ui = None
def __init__(self, driver, obj_name): self.obj_name = obj_name self._locators_filter = locator.BaseWidgetGeneric self._locators_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.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) # 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()
def __init__(self, driver): super(AsmtTmplModal, self).__init__(driver) self.ui_assignees = base.DropdownStatic( driver, locator.ModalCreateNewAsmtTmpl.ASSIGNEE_DROPDOWN)
def __init__(self, driver): super(AsmtTmplModal, self).__init__(driver) self.assignees_dd = base.DropdownStatic( self.modal_elem, self._locators.ASSIGNEE_DROPDOWN)
def obj_type_dropdown(self): return base.DropdownStatic(self.modal_elem, self._locators.OBJ_TYPE_DROPDOWN)