예제 #1
0
파일: finder.py 프로젝트: rseek/contesto
def find_elements(obj, locator, timeout=None):
    wait = waiter(obj, timeout=timeout)
    log.debug(u"Trying to find elements: %s, timeout: %s" % (locator, wait._timeout))
    try:
        return wait.until(lambda dr: dr.find_elements(by=locator["by"], value=locator["value"]))
    except TimeoutException as e:
        raise ElementNotFound(locator["value"], locator["by"])
예제 #2
0
파일: finder.py 프로젝트: 2gis/contesto
def find_element(obj, locator, timeout=None, poll_frequency=float()):
    wait = waiter(obj, timeout=timeout, poll_frequency=poll_frequency)
    log.debug(u"Trying to find element: %s, timeout: %s" % (locator, wait._timeout))
    try:
        return wait.until(lambda dr: dr.find_element(by=locator["by"], value=locator["value"]),
                          "Element %s not found by %s" % (locator["value"], locator["by"]))
    except TimeoutException as e:
        raise ElementNotFound(locator["value"], locator["by"])
예제 #3
0
def find_elements(obj, locator, timeout=None, poll_frequency=float()):
    wait = waiter(obj, timeout=timeout, poll_frequency=poll_frequency)
    log.debug(u"Trying to find elements: %s, timeout: %s" %
              (locator, wait._timeout))
    try:
        return wait.until(lambda dr: dr.find_elements(by=locator["by"],
                                                      value=locator["value"]))
    except TimeoutException as e:
        raise ElementNotFound(locator["value"], locator["by"])
예제 #4
0
파일: finder.py 프로젝트: gridl/contesto
def find_element(obj, locator, timeout=None):
    wait = waiter(obj, timeout=timeout)
    log.debug(u"Trying to find element: %s, timeout: %s" %
              (locator, wait._timeout))
    try:
        return wait.until(
            lambda dr: dr.find_element(by=locator["by"],
                                       value=locator["value"]),
            "Element %s not found by %s" % (locator["value"], locator["by"]))
    except TimeoutException as e:
        raise ElementNotFound(locator["value"], locator["by"])
예제 #5
0
파일: __init__.py 프로젝트: 2gis/contesto
    def _load(self):
        log.info("Loading %s" % self.__title__)

        if self._on_load_hooks:
            log.info("Running onload hooks")
        for hook in self._on_load_hooks:
            hook()

        if self._on_load_elements:
            log.info("Checking onload elements")
        for locator in self._on_load_elements:
            try:
                element = find_element(self.driver, locator)
                wait = waiter(element)
                wait.until(lambda el: el.is_displayed(), "Element %s is still not displayed" % locator["value"])
            except:
                raise Exception("Failed to load page: %s\n"
                                "%s\n" % (self.__title__, format_exc()))

        log.info("%s loaded" % self.__title__)
예제 #6
0
    def _load(self):
        log.info("Loading %s" % self.__title__)

        if self._on_load_hooks:
            log.info("Running onload hooks")
        for hook in self._on_load_hooks:
            hook()

        if self._on_load_elements:
            log.info("Checking onload elements")
        for locator in self._on_load_elements:
            try:
                element = find_element(self.driver, locator)
                wait = waiter(element)
                wait.until(
                    lambda el: el.is_displayed(),
                    "Element %s is still not displayed" % locator["value"])
            except:
                raise Exception("Failed to load page: %s\n"
                                "%s\n" % (self.__title__, format_exc()))

        log.info("%s loaded" % self.__title__)