Ejemplo n.º 1
0
    def navigator(self):
        """
        Set the driver with the web driver

        Returns:
             self.driver: web driver
        """
        if self.instance is None:
            self.instance = Navigate()

        return self.instance
Ejemplo n.º 2
0
        view = self.view if self.VIEW is not None else None
        duration = int((time.time() - start_time) * 1000)
        if view and nav_args['wait_for_view'] and not os.environ.get(
                'DISABLE_NAVIGATE_ASSERT', False):
            waited = True
            wait_for(lambda: view.is_displayed,
                     num_sec=nav_args['wait_for_view'],
                     message="Waiting for view [{}] to display".format(
                         view.__class__.__name__))
        self.log_message(self.construct_message(here, resetter_used, view,
                                                duration, waited, force_used),
                         level="info")
        return view


navigator = Navigate()
navigate_to = navigator.navigate


class ViaUI(Implementation):
    """UI implementation using the normal ux"""

    name = "UI"
    navigator = navigator

    def __str__(self):
        return 'UI'

    @cached_property
    def widgetastic(self):
        """This gives us a widgetastic browser."""
state = []
arg_store = []

logger = logging.getLogger('navmazing_null')
for handler in logger.handlers:
    logger.removeHandler(handler)

file_formatter = logging.Formatter('%(asctime)-15s [%(levelname).1s] %(message)s')
file_handler = logging.FileHandler('navmazing.log')
file_handler.setFormatter(file_formatter)

logger.addHandler(file_handler)
logger.setLevel(10)

navigate = Navigate(logger)


class ObjectA(object):

    def __init__(self, name):
        self.name = name
        self.margs = None
        self.kwargs = None


class ObjectB(object):

    def __init__(self, name, parent):
        self.name = name
        self.parent = parent
Ejemplo n.º 4
0
from navmazing import (Navigate, NavigateStep, NavigateToSibling,
                       NavigationTriesExceeded, NavigationDestinationNotFound,
                       NavigateToAttribute, NavigateToObject)
import pytest

navigate = Navigate()

state = []
arg_store = []


class ObjectA(object):
    def __init__(self, name):
        self.name = name
        self.margs = None
        self.kwargs = None


class ObjectB(object):
    def __init__(self, name, parent):
        self.name = name
        self.parent = parent


class ObjectC(object):
    def __init__(self, name, parent=None):
        self.name = name
        self.parent = parent


@navigate.register(ObjectB)