Fixed test for elapsed time

This commit is contained in:
iory 2020-04-17 18:31:12 +09:00 committed by Ram Rachum
parent 32183e0489
commit 57cec2b9af
5 changed files with 68 additions and 12 deletions

View file

@ -46,4 +46,5 @@ TypeError: bad
12:18:08.018787 line 21 pass
12:18:08.018813 return 21 pass
Return value:.. None
Total elapsed time: 00:00:00.000885
'''

View file

@ -42,4 +42,5 @@ Source path:... Whatever
Return value:.. None
21:10:42.299627 return 6 f2()
Return value:.. None
Total elapsed time: 00:00:00.000885
'''

View file

@ -59,4 +59,5 @@ Starting var:.. x = 4
Return value:.. 24
20:28:17.876646 return 8 return mul(x, factorial(x - 1))
Return value:.. 24
Total elapsed time: 00:00:00.000651
'''

View file

@ -16,7 +16,8 @@ from pysnooper import pycompat
from pysnooper.variables import needs_parentheses
from .utils import (assert_output, assert_sample_output, VariableEntry,
CallEntry, LineEntry, ReturnEntry, OpcodeEntry,
ReturnValueEntry, ExceptionEntry, SourcePathEntry)
ReturnValueEntry, ExceptionEntry, SourcePathEntry,
ElapsedTimeEntry)
from . import mini_toolbox
@ -44,6 +45,7 @@ def test_chinese():
VariableEntry(u'x', (u"'失败'" if pycompat.PY3 else None)),
LineEntry(),
ReturnEntry(),
ReturnValueEntry('7')
ReturnValueEntry('7'),
ElapsedTimeEntry(),
),
)

View file

@ -15,7 +15,8 @@ import pysnooper
from pysnooper.variables import needs_parentheses
from .utils import (assert_output, assert_sample_output, VariableEntry,
CallEntry, LineEntry, ReturnEntry, OpcodeEntry,
ReturnValueEntry, ExceptionEntry, SourcePathEntry)
ReturnValueEntry, ExceptionEntry, SourcePathEntry,
ElapsedTimeEntry)
from . import mini_toolbox
@ -44,6 +45,7 @@ def test_string_io():
LineEntry('return y + x'),
ReturnEntry('return y + x'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
)
)
@ -74,6 +76,7 @@ def test_thread_info():
LineEntry('return y + x'),
ReturnEntry('return y + x'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
)
)
@ -125,6 +128,7 @@ def test_multi_thread_info():
name="MainThread")),
ReturnEntry('return y + x'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
VariableEntry('foo', value_regex="u?'bubu'"),
CallEntry('def my_function(foo):',
thread_info_regex=thread_info_regex.format(
@ -142,6 +146,7 @@ def test_multi_thread_info():
name="test123")),
ReturnEntry('return y + x'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
VariableEntry('foo', value_regex="u?'bibi'"),
CallEntry('def my_function(foo):',
thread_info_regex=thread_info_regex.format(name='bibi')),
@ -155,6 +160,7 @@ def test_multi_thread_info():
thread_info_regex=thread_info_regex.format(name='bibi')),
ReturnEntry('return y + x'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
)
)
@ -188,6 +194,7 @@ def test_callable(normalize):
LineEntry('return y + x'),
ReturnEntry('return y + x'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -240,7 +247,8 @@ def test_watch(normalize):
VariableEntry('len(foo.__dict__["x"] * "abc")', '48'),
LineEntry(),
ReturnEntry(),
ReturnValueEntry('None')
ReturnValueEntry('None'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -291,7 +299,8 @@ def test_watch_explode(normalize):
VariableEntry('(lst + [])[3]', '10'),
VariableEntry('lst + []'),
ReturnEntry(),
ReturnValueEntry('None')
ReturnValueEntry('None'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -342,7 +351,8 @@ def test_variables_classes(normalize):
VariableEntry('_lst[998]', '998'),
VariableEntry('_lst[999]', '999'),
ReturnEntry(),
ReturnValueEntry('None')
ReturnValueEntry('None'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -384,7 +394,8 @@ def test_single_watch_no_comma(normalize):
LineEntry(),
LineEntry(),
ReturnEntry(),
ReturnValueEntry('None')
ReturnValueEntry('None'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -412,7 +423,8 @@ def test_long_variable(normalize):
VariableEntry('foo', value_regex=regex),
LineEntry(),
ReturnEntry(),
ReturnValueEntry(value_regex=regex)
ReturnValueEntry(value_regex=regex),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -440,7 +452,8 @@ def test_long_variable_with_custom_max_variable_length(normalize):
VariableEntry('foo', value_regex=regex),
LineEntry(),
ReturnEntry(),
ReturnValueEntry(value_regex=regex)
ReturnValueEntry(value_regex=regex),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -468,7 +481,8 @@ def test_long_variable_with_infinite_max_variable_length(normalize):
VariableEntry('foo', value_regex=regex),
LineEntry(),
ReturnEntry(),
ReturnValueEntry(value_regex=regex)
ReturnValueEntry(value_regex=regex),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -498,7 +512,8 @@ def test_repr_exception(normalize):
LineEntry('bad = Bad()'),
VariableEntry('bad', value='REPR FAILED'),
ReturnEntry(),
ReturnValueEntry('None')
ReturnValueEntry('None'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -561,6 +576,7 @@ def test_depth(normalize):
LineEntry(),
ReturnEntry(),
ReturnValueEntry('20'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -600,6 +616,7 @@ def test_method_and_prefix(normalize):
LineEntry(prefix='ZZZ'),
ReturnEntry(prefix='ZZZ'),
ReturnValueEntry(prefix='ZZZ'),
ElapsedTimeEntry(prefix='ZZZ'),
),
prefix='ZZZ',
normalize=normalize,
@ -634,6 +651,7 @@ def test_file_output(normalize):
LineEntry('return y + x'),
ReturnEntry('return y + x'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -679,6 +697,7 @@ def test_confusing_decorator_lines(normalize):
# back in my_function
ReturnEntry(),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -700,6 +719,7 @@ def test_lambda(normalize):
LineEntry(source_regex='^my_function = pysnooper.*'),
ReturnEntry(source_regex='^my_function = pysnooper.*'),
ReturnValueEntry('49'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -734,6 +754,7 @@ def test_unavailable_source():
LineEntry('SOURCE IS UNAVAILABLE'),
ReturnEntry('SOURCE IS UNAVAILABLE'),
ReturnValueEntry('7'),
ElapsedTimeEntry(),
)
)
@ -767,6 +788,7 @@ def test_no_overwrite_by_default():
LineEntry('return y + x'),
ReturnEntry('return y + x'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
)
)
@ -800,6 +822,7 @@ def test_overwrite():
LineEntry('return y + x'),
ReturnEntry('return y + x'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
VariableEntry('foo', value_regex="u?'baba'"),
CallEntry('def my_function(foo):'),
@ -810,6 +833,7 @@ def test_overwrite():
LineEntry('return y + x'),
ReturnEntry('return y + x'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
)
)
@ -914,6 +938,7 @@ def test_with_block(normalize):
LineEntry('qux()'),
ReturnEntry('qux()'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
# In with in recursive call
LineEntry('bar2(x)'),
@ -925,9 +950,11 @@ def test_with_block(normalize):
LineEntry('qux()'),
ReturnEntry('qux()'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
# In with in recursive call
LineEntry('qux()'),
ElapsedTimeEntry(),
# Call to bar3 from after with
VariableEntry('_x', '9'),
@ -936,6 +963,7 @@ def test_with_block(normalize):
LineEntry('qux()'),
ReturnEntry('qux()'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
# -- Similar to previous few sections,
# -- but from first call to foo
@ -950,9 +978,11 @@ def test_with_block(normalize):
LineEntry('qux()'),
ReturnEntry('qux()'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
# In with in first call
LineEntry('qux()'),
ElapsedTimeEntry(),
# Call to bar3 from after with
VariableEntry('_x', '9'),
@ -961,6 +991,7 @@ def test_with_block(normalize):
LineEntry('qux()'),
ReturnEntry('qux()'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -1020,6 +1051,7 @@ def test_with_block_depth(normalize):
LineEntry(),
ReturnEntry(),
ReturnValueEntry('20'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -1086,6 +1118,7 @@ def test_cellvars(normalize):
ReturnValueEntry(),
ReturnEntry(),
ReturnValueEntry(),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -1133,6 +1166,7 @@ def test_var_order(normalize):
VariableEntry("seven", "7"),
ReturnEntry(),
ReturnValueEntry(),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -1207,6 +1241,7 @@ def test_generator():
LineEntry(),
ReturnEntry(),
ReturnValueEntry('0'),
ElapsedTimeEntry(),
# Pause and resume:
@ -1223,6 +1258,7 @@ def test_generator():
LineEntry(),
ReturnEntry(),
ReturnValueEntry('2'),
ElapsedTimeEntry(),
# Pause and resume:
@ -1238,7 +1274,7 @@ def test_generator():
LineEntry(),
ReturnEntry(),
ReturnValueEntry(None),
ElapsedTimeEntry(),
)
)
@ -1285,6 +1321,7 @@ def test_custom_repr(normalize):
LineEntry(),
ReturnEntry(),
ReturnValueEntry('49995000'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -1313,6 +1350,7 @@ def test_custom_repr_single(normalize):
LineEntry(),
ReturnEntry(),
ReturnValueEntry('7'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -1363,6 +1401,7 @@ def test_class(normalize):
LineEntry('self.x = 7'),
ReturnEntry('self.x = 7'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
VariableEntry('self', value_regex="u?.+MyClass object"),
VariableEntry('foo', value_regex="u?'baba'"),
CallEntry('def my_method(self, foo):'),
@ -1371,6 +1410,7 @@ def test_class(normalize):
LineEntry('return y + self.x'),
ReturnEntry('return y + self.x'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -1409,6 +1449,7 @@ def test_class_with_decorated_method(normalize):
LineEntry('self.x = 7'),
ReturnEntry('self.x = 7'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
VariableEntry('args', value_regex=r"\(<.+>, 'baba'\)"),
VariableEntry('kwargs', value_regex=r"\{\}"),
VariableEntry('function', value_regex="u?.+my_method"),
@ -1418,6 +1459,7 @@ def test_class_with_decorated_method(normalize):
LineEntry('return result'),
ReturnEntry('return result'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -1457,6 +1499,7 @@ def test_class_with_decorated_method_and_snoop_applied_to_method(normalize):
LineEntry('self.x = 7'),
ReturnEntry('self.x = 7'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
VariableEntry('args', value_regex=r"u?\(<.+>, 'baba'\)"),
VariableEntry('kwargs', value_regex=r"u?\{\}"),
VariableEntry('function', value_regex="u?.*my_method"),
@ -1475,6 +1518,7 @@ def test_class_with_decorated_method_and_snoop_applied_to_method(normalize):
LineEntry('return result'),
ReturnEntry('return result'),
ReturnValueEntry('15'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -1531,6 +1575,7 @@ def test_class_with_property(normalize):
LineEntry('self._x = 0'),
ReturnEntry('self._x = 0'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
# Called from getter
VariableEntry('self', value_regex="u?.*MyClass object"),
@ -1538,6 +1583,7 @@ def test_class_with_property(normalize):
LineEntry('pass'),
ReturnEntry('pass'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
# Called from setter
VariableEntry('self', value_regex="u?.*MyClass object"),
@ -1545,6 +1591,7 @@ def test_class_with_property(normalize):
LineEntry('pass'),
ReturnEntry('pass'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
# Called from deleter
VariableEntry('self', value_regex="u?.*MyClass object"),
@ -1552,6 +1599,7 @@ def test_class_with_property(normalize):
LineEntry('pass'),
ReturnEntry('pass'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -1589,6 +1637,7 @@ def test_snooping_on_class_does_not_cause_base_class_to_be_snooped(normalize):
LineEntry('self.method_on_base_class()'),
ReturnEntry('self.method_on_base_class()'),
ReturnValueEntry('None'),
ElapsedTimeEntry(),
),
normalize=normalize,
)
@ -1625,6 +1674,7 @@ def test_normalize():
LineEntry('return res'),
ReturnEntry('return res'),
ReturnValueEntry('41'),
ElapsedTimeEntry(),
)
)
@ -1661,6 +1711,7 @@ def test_normalize_prefix():
LineEntry('return res', prefix=_prefix),
ReturnEntry('return res', prefix=_prefix),
ReturnValueEntry('41', prefix=_prefix),
ElapsedTimeEntry(prefix=_prefix),
)
)