Skip to content

Commit

Permalink
Merge f0ce8c4 into ba8f7a4
Browse files Browse the repository at this point in the history
  • Loading branch information
RonnyPfannschmidt committed Jul 18, 2018
2 parents ba8f7a4 + f0ce8c4 commit 1d1aa72
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 19 deletions.
2 changes: 2 additions & 0 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@
'selenium-smart-locator',
'six',
'wait_for',
'logging_prefixes>=0.1.1',
'attrs',
],
setup_requires=[
'setuptools_scm',
Expand Down
29 changes: 10 additions & 19 deletions src/widgetastic/widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,7 @@
from .exceptions import (
NoSuchElementException, LocatorNotImplemented, WidgetOperationFailed, DoNotReadThisWidget,
RowNotFound)
from .log import (
PrependParentsAdapter, create_widget_logger, logged, call_sig, create_child_logger,
create_item_logger)
from logging_prefixes import logged, call_sig, coerce_from_parent_to_prepend_logger
from .utils import (
Widgetable, Fillable, ParametrizedLocator, ParametrizedString, ConstructorResolvable,
attributize_string, normalize_space, nested_getattr, deflatten_dict)
Expand Down Expand Up @@ -122,7 +120,7 @@ def __get__(self, obj, type=None):
if self not in obj._widget_cache:
kwargs = copy(self.kwargs)
try:
kwargs['logger'] = create_child_logger(obj.logger, obj._desc_name_mapping[self])
kwargs['logger'] = obj.logger.child_logger(obj._desc_name_mapping[self])
except KeyError:
kwargs['logger'] = obj.logger
except AttributeError:
Expand Down Expand Up @@ -315,14 +313,7 @@ def __new__(cls, *args, **kwargs):

def __init__(self, parent, logger=None):
self.parent = parent
if logger is None:
self.logger = create_child_logger(parent.logger, type(self).__name__)
elif isinstance(logger, PrependParentsAdapter):
# The logger is already prepared
self.logger = logger
else:
# We need a PrependParentsAdapter here.
self.logger = create_widget_logger(type(self).__name__, logger)
self.logger = coerce_from_parent_to_prepend_logger(parent, type(self).__name__, logger)
self.extra = ExtraData(self)
self._widget_cache = {}
self._initialized_included_widgets = {}
Expand Down Expand Up @@ -953,7 +944,7 @@ def __call__(self, *args, **kwargs):
current_name = self.view_class.__name__
# Now add the params to the name so it is class_name(args)
current_name += call_sig((), param_dict) # no args because we process everything into dict
new_kwargs['logger'] = create_child_logger(parent_logger, current_name)
new_kwargs['logger'] = parent_logger.child_logger(current_name)
result = self.view_class(self.parent_object, *self.args, **new_kwargs)
self.parent_object.child_widget_accessed(result)
return result
Expand Down Expand Up @@ -1266,7 +1257,7 @@ def widget(self):
wcls = wcls.klass
kwargs = copy(kwargs)
if 'logger' not in kwargs:
kwargs['logger'] = create_child_logger(self.logger, wcls.__name__)
kwargs['logger'] = self.logger.child_logger(wcls.__name__)
return wcls(self, *args, **kwargs)

@property
Expand Down Expand Up @@ -1341,10 +1332,10 @@ def position_to_column_name(self, position):

def __getitem__(self, item):
if isinstance(item, int):
return self.Column(self, item, logger=create_item_logger(self.logger, item))
return self.Column(self, item, logger=self.logger.item_logger(item))
elif isinstance(item, six.string_types):
index = self.table.header_index_mapping[self.table.ensure_normal(item)]
return self.Column(self, index, logger=create_item_logger(self.logger, item))
return self.Column(self, index, logger=self.logger.item_logger(item))
else:
raise TypeError('row[] accepts only integers and strings')

Expand Down Expand Up @@ -1608,7 +1599,7 @@ def __getitem__(self, item):
if at_index < 0:
# To mimic the list handling
at_index = self._process_negative_index(at_index)
return self.Row(self, at_index, logger=create_item_logger(self.logger, item))
return self.Row(self, at_index, logger=self.logger.item_logger(item))

def row(self, *extra_filters, **filters):
try:
Expand Down Expand Up @@ -1664,7 +1655,7 @@ def rows(self, *extra_filters, **filters):
def _all_rows(self):
for row_pos in range(len(self.browser.elements(self.ROWS, parent=self))):
row_pos = row_pos if not self._is_header_in_body else row_pos + 1
yield self.Row(self, row_pos, logger=create_item_logger(self.logger, row_pos))
yield self.Row(self, row_pos, logger=self.logger.item_logger(row_pos))

def _filtered_rows(self, *extra_filters, **filters):
# Pre-process the filters
Expand Down Expand Up @@ -1775,7 +1766,7 @@ def _filtered_rows(self, *extra_filters, **filters):
for row_element in self.browser.elements(query, parent=self):
row_pos = self._get_number_preceeding_rows(row_element)
row_pos = row_pos if not self._is_header_in_body else row_pos + 1
rows.append(self.Row(self, row_pos, logger=create_item_logger(self.logger, row_pos)))
rows.append(self.Row(self, row_pos, logger=self.logger.item_logger(row_pos)))

for row in rows:
if regexp_filters:
Expand Down
1 change: 1 addition & 0 deletions tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ envlist = py{27,35,36},pypy,codechecks
[testenv]
passenv = TRAVIS TRAVIS_JOB_ID TRAVIS_BRANCH
deps=
logging_prefixes>=0.1.1
pytest<=2.9.0,>=2.7.3
pytest-localserver
pytest-cov
Expand Down

0 comments on commit 1d1aa72

Please sign in to comment.