def get_references_num(self, editor=None): if editor is None: editor = self.get_editor_element() WebDriverWait(self.get_driver(), self.DEFAULT_TIMEOUT).until( expected_conditions.presence_of_element_located( UI.get_monako_zone_widget_locator())) widget_zone = self.find_it(UI.get_monako_zone_widget_locator(), parent=editor) highlight(widget_zone) list_rows = self.find_them(UI.get_monako_list_row_locator(), parent=widget_zone) return len(list_rows)
def get_current_line_num_inside_widget_zone(self, content, editor=None): if editor is None: editor = self.get_editor_element() WebDriverWait(self.get_driver(), self.DEFAULT_TIMEOUT).until( expected_conditions.presence_of_element_located( UI.get_monako_zone_widget_locator())) widget_zone = self.find_it(UI.get_monako_zone_widget_locator(), parent=editor) highlight(widget_zone) current_line_num = self.get_current_line_num(content=content, parent=widget_zone) return current_line_num
def close_zone_widget_if_exists(self, editor=None): if editor is None: editor = self.get_editor_element() try: widget_zone = self.find_it(UI.get_monako_zone_widget_locator(), parent=editor) highlight(widget_zone) actions = self.find_them(UI.get_action_items_locator(), parent=widget_zone) for action in actions: highlight(action) action_label = self.find_it(UI.get_action_label_locator()) if action_label.get_attribute( constants.ELEMENT_TITLE) == constants.Close: self.click_me(action, element_human_name=constants.Close) self.wait_for_widget_zone_disappear(editor) break except WebDriverException: print("No widget zone. That's fine here.") except Exception: raise GeneralException( self.get_driver(), call_from=self.close_zone_widget_if_exists.__name__)
def navigate_with_references(self, editor=None): if editor is None: editor = self.get_editor_element() WebDriverWait(self.get_driver(), self.DEFAULT_TIMEOUT).until( expected_conditions.presence_of_element_located( UI.get_monako_zone_widget_locator())) widget_zone = self.find_it(UI.get_monako_zone_widget_locator(), parent=editor) highlight(widget_zone) tree_rows = self.find_them(UI.get_monako_tree_row_locator(), parent=widget_zone) for row in tree_rows: highlight(row, effect_time=1) self.click_me(row) current_line_num = self.get_current_line_num(parent=widget_zone)
def get_line_num_for_reference(self, ref_num, content=None, editor=None): if editor is None: editor = self.get_editor_element() ref_num = int(ref_num) WebDriverWait(self.get_driver(), self.DEFAULT_TIMEOUT).until( expected_conditions.presence_of_element_located( UI.get_monako_zone_widget_locator())) widget_zone = self.find_it(UI.get_monako_zone_widget_locator(), parent=editor) highlight(widget_zone) list_rows = self.find_them(UI.get_monako_list_row_locator(), parent=widget_zone) self.click_me(list_rows[ref_num]) current_line_num = self.get_current_line_num(content=content, parent=widget_zone) return current_line_num
def wait_for_widget_zone_disappear(self, editor=None): if editor is None: editor = self.get_editor_element() try: widget_zone = self.find_it(UI.get_monako_zone_widget_locator(), parent=editor) raise WebDriverException finally: return