Exemple #1
0
    def do_GET(self):
        try:

            path, body, session, element = self.process_request()

            if path.startswith('/attribute/'):
                assert(session)
                name = path[len('/attribute/'):]
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session,
                               value=marionette_element.get_attribute(name))
            elif path == '/displayed':
                assert(session)
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session,
                               value=marionette_element.displayed())
            elif path == '/enabled':
                assert(session)
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session,
                               value=marionette_element.enabled())
            elif path.startswith('/equals/'):
                assert(session)
                other = path[len('/equals'):]
                marionette_element = HTMLElement(self.server.marionette, element)
                other_element = HTMLElement(self.server.marionette, other)
                self.send_JSON(session=session,
                               value=marionette_element.equals(other))
            elif path == '/selected':
                assert(session)
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session,
                               value=marionette_element.selected())
            elif path == '/status':
                self.send_JSON(data=self.server.marionette.status())
            elif path == '/text':
                assert(session)
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session,
                               value=marionette_element.text())
            elif path == '/url':
                assert(session)
                self.send_JSON(value=self.server.marionette.get_url(),
                               session=session)
            elif path == '/value':
                assert(session)
                marionette_element = HTMLElement(self.server.marionette, element)
                send.send_JSON(session=session,
                               value=marionette_element.value())
            elif path == '/window_handle':
                assert(session)
                self.send_JSON(session=session,
                               value=self.server.marionette.get_window())
            elif path == '/window_handles':
                assert(session)
                self.send_JSON(session=session,
                               value=self.server.marionette.get_windows())
            else:
                self.file_not_found()

        except MarionetteException, e:
            self.send_JSON(data={'status': e.status}, value={'message': e.message})
    def do_GET(self):
        try:

            path, body, session, element = self.process_request()
            logger.debug("%s - %s - %s - %s" % (path, body, session, element))

            if path.startswith("/attribute/"):
                logger.info("Getting Attribute %s - %s" % (element, session))
                assert session
                name = path[len("/attribute/") :]
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session, value=marionette_element.get_attribute(name))
            elif path == "/displayed":
                logger.info("Displayed %s - %s" % (element, session))
                assert session
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session, value=marionette_element.is_displayed())
            elif path == "/enabled":
                logger.info("Enabled %s - %s" % (element, session))
                assert session
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session, value=marionette_element.enabled())
            elif path.startswith("/equals/"):
                assert session
                other = path[len("/equals") :]
                marionette_element = HTMLElement(self.server.marionette, element)
                other_element = HTMLElement(self.server.marionette, other)
                self.send_JSON(session=session, value=marionette_element.equals(other_element))
            elif path == "/selected":
                logger.info("Selected %s - %s" % (element, session))
                assert session
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session, value=marionette_element.selected())
            elif path == "/status":
                self.send_JSON(data=self.server.marionette.status())
            elif path == "/text":
                logger.info("Getting text %s - %s" % (element, session))
                assert session
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session, value=marionette_element.text)
            elif path == "/url":
                logger.info("Getting url - %s" % session)
                assert session
                self.send_JSON(value=self.server.marionette.get_url(), session=session)
            elif path == "/window_handle":
                logger.info("Getting window handle - %s" % session)
                assert session
                self.send_JSON(session=session, value=self.server.marionette.current_window_handle)
            elif path == "/window_handles":
                logger.info("Getting window handles - %s" % session)
                assert session
                self.send_JSON(session=session, value=self.server.marionette.window_handles)
            elif path == "/title":
                logger.info("Getting Window Title")
                assert session
                self.send_JSON(session=session, value=self.server.marionette.title)
            elif path == "/name":
                logger.info("Getting element tag name")
                assert session
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session, value=marionette_element.tag_name)
            else:
                logger.error("Unknown path - %s" % session)
                self.file_not_found()

        except MarionetteException as e:
            logger.error("Status: %s - Message: %s" % (e.status, e.message))
            self.send_JSON(data={"status": e.status}, value={"message": e.message})
        except:
            trace_ = traceback.format_exc()
            logger.critical("Server Exception: %s" % trace_)
            self.server_error(trace_)
Exemple #3
0
    def do_GET(self):
        try:

            path, body, session, element = self.process_request()

            if path.startswith('/attribute/'):
                assert(session)
                name = path[len('/attribute/'):]
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session,
                               value=marionette_element.get_attribute(name))
            elif path == '/displayed':
                assert(session)
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session,
                               value=marionette_element.displayed())
            elif path == '/enabled':
                assert(session)
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session,
                               value=marionette_element.enabled())
            elif path.startswith('/equals/'):
                assert(session)
                other = path[len('/equals'):]
                marionette_element = HTMLElement(self.server.marionette, element)
                other_element = HTMLElement(self.server.marionette, other)
                self.send_JSON(session=session,
                               value=marionette_element.equals(other))
            elif path == '/selected':
                assert(session)
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session,
                               value=marionette_element.selected())
            elif path == '/status':
                self.send_JSON(data=self.server.marionette.status())
            elif path == '/text':
                assert(session)
                marionette_element = HTMLElement(self.server.marionette, element)
                self.send_JSON(session=session,
                               value=marionette_element.text())
            elif path == '/url':
                assert(session)
                self.send_JSON(value=self.server.marionette.get_url(),
                               session=session)
            elif path == '/value':
                assert(session)
                marionette_element = HTMLElement(self.server.marionette, element)
                send.send_JSON(session=session,
                               value=marionette_element.value())
            elif path == '/window_handle':
                assert(session)
                self.send_JSON(session=session,
                               value=self.server.marionette.get_window())
            elif path == '/window_handles':
                assert(session)
                self.send_JSON(session=session,
                               value=self.server.marionette.get_windows())
            else:
                self.file_not_found()

        except MarionetteException, e:
            self.send_JSON(data={'status': e.status}, value={'message': e.message})