Backed out changeset 73b1eed8ce09

This commit is contained in:
holger krekel 2013-11-22 13:52:53 +01:00
parent 438d85b5ad
commit a6783cd6f3
4 changed files with 10 additions and 23 deletions

View File

@ -78,12 +78,10 @@ def pytest_runtest_setup(item):
for new_expl in hook_result: for new_expl in hook_result:
if new_expl: if new_expl:
# Don't include pageloads of data unless we # Don't include pageloads of data unless we are very verbose (-vv)
# are very verbose (-vv)
if len(''.join(new_expl[1:])) > 80*8 and item.config.option.verbose < 2: if len(''.join(new_expl[1:])) > 80*8 and item.config.option.verbose < 2:
new_expl[1:] = ['Detailed information truncated, use "-vv" to see'] new_expl[1:] = ['Detailed information truncated, use "-vv" to see']
res = '\n'.join(new_expl) res = '\n~'.join(new_expl)
print res
if item.config.getvalue("assertmode") == "rewrite": if item.config.getvalue("assertmode") == "rewrite":
# The result will be fed back a python % formatting # The result will be fed back a python % formatting
# operation, which will fail if there are extraneous # operation, which will fail if there are extraneous

View File

@ -95,6 +95,9 @@ except NameError:
def assertrepr_compare(config, op, left, right): def assertrepr_compare(config, op, left, right):
"""Return specialised explanations for some operators/operands""" """Return specialised explanations for some operators/operands"""
width = 80 - 15 - len(op) - 2 # 15 chars indentation, 1 space around op width = 80 - 15 - len(op) - 2 # 15 chars indentation, 1 space around op
left_repr = py.io.saferepr(left, maxsize=int(width/2))
right_repr = py.io.saferepr(right, maxsize=width-len(left_repr))
summary = '%s %s %s' % (left_repr, op, right_repr)
issequence = lambda x: (isinstance(x, (list, tuple, Sequence)) issequence = lambda x: (isinstance(x, (list, tuple, Sequence))
and not isinstance(x, basestring)) and not isinstance(x, basestring))
@ -117,7 +120,9 @@ def assertrepr_compare(config, op, left, right):
elif op == 'not in': elif op == 'not in':
if istext(left) and istext(right): if istext(left) and istext(right):
explanation = _notin_text(left, right, verbose) explanation = _notin_text(left, right, verbose)
except Exception: except py.builtin._sysex:
raise
except:
excinfo = py.code.ExceptionInfo() excinfo = py.code.ExceptionInfo()
explanation = [ explanation = [
'(pytest_assertion plugin: representation of details failed. ' '(pytest_assertion plugin: representation of details failed. '
@ -125,15 +130,7 @@ def assertrepr_compare(config, op, left, right):
if not explanation: if not explanation:
return None return None
if istext(left):
left_repr = left[:int(width/2)]
else:
left_repr = py.io.saferepr(left, maxsize=int(width/2))
if istext(right):
right_repr = right[:int(width/2)]
else:
right_repr = py.io.saferepr(right, maxsize=width-len(left_repr))
summary = '%s %s %s' % (left_repr, op, right_repr)
return [summary] + explanation return [summary] + explanation

View File

@ -121,8 +121,6 @@ Builtin configuration file options
.. confval:: python_functions .. confval:: python_functions
One or more name prefixes determining which test functions One or more name prefixes determining which test functions
and methods are considered as test modules. Note that this and methods are considered as test modules.
has no effect on methods that live on a ``unittest.TestCase``
derived class.
See :ref:`change naming conventions` for examples. See :ref:`change naming conventions` for examples.

View File

@ -53,12 +53,6 @@ then the test collection looks like this::
============================= in 0.01 seconds ============================= ============================= in 0.01 seconds =============================
.. note::
the ``python_functions`` and ``python_classes`` has no effect
for ``unittest.TestCase`` test discovery because pytest delegates
detection of test case methods to unittest code.
Interpreting cmdline arguments as Python packages Interpreting cmdline arguments as Python packages
----------------------------------------------------- -----------------------------------------------------