def get_element_from_OR(self,OR_name): locator = OR.get(OR_name.lower()) if locator: logger.warn("Found an overwrite in the OR for name %s with locator %s. Not using dummy classes" % (OR_name, locator)) element = self._element_find(locator,True,True) #try to slow things down a little bit here #self._wait_for_elem(element) self._prep_element(element) return element raise RuntimeError("Trying to lookup %s in OR but item not found" % (OR_name))
def euh_click_tab(self,sub_module_name,tab_name): '''used to click a tab only if the tab is currently showing on the screen.. i.e.this function does not click on module / submodule buttons first''' if not tab_name: return self._wait_for_loading_div_to_clear() tab = self._get_euh_tab(tab_name) self._wait_and_click(tab) self._wait_for_loading_div_to_clear() #extra step to wait for element to appear on the screen because chrome doesn't always #honor the implicit wait setting so we do it explicitly here if it is setup in OR tab_wait_for = OR.get("tab_wait_for_%s_%s" %(sub_module_name.lower(),tab_name.lower())) if not tab_wait_for: logger.warn("There is not a tab_wait_for in OR for tab %s_%s this may cause tests not to work." % (sub_module_name,tab_name)) else: #wait_for_it loaded = self._with_timeout(self._is_element_visible_and_page_not_loading, tab_wait_for) if not loaded: logger.warn("Tab %s may not have loaded correctly, trying to continue anyways" % (tab_name))