[Python-checkins] python/dist/src/Lib/test test_doctest.py, 1.21,
1.22
tim_one at users.sourceforge.net
tim_one at users.sourceforge.net
Thu Aug 19 08:49:36 CEST 2004
Update of /cvsroot/python/python/dist/src/Lib/test
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3017/Lib/test
Modified Files:
test_doctest.py
Log Message:
ELLIPSIS implementation: an ellipsis couldn't match nothing if it
appeared at the end of a line. Repaired that. Also noted that it's
too easy to provoke this implementation into requiring exponential
time, and especially when a test fails. I'll replace the implementation
with an always-efficient one later.
Index: test_doctest.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_doctest.py,v
retrieving revision 1.21
retrieving revision 1.22
diff -C2 -d -r1.21 -r1.22
*** test_doctest.py 17 Aug 2004 16:37:12 -0000 1.21
--- test_doctest.py 19 Aug 2004 06:49:33 -0000 1.22
***************
*** 781,784 ****
--- 781,807 ----
(0, 1)
+ ... should also match nothing gracefully:
+ XXX This can be provoked into requiring exponential time by adding more
+ XXX ellipses; the implementation should change. It's much easier to
+ XXX provoke exponential time with expected output that doesn't match,
+ XXX BTW (then multiple regexp .* thingies each try all possiblities,
+ XXX multiplicatively, without hope of success). That's the real danger,
+ XXX that a failing test will appear to be hung.
+
+ >>> for i in range(100):
+ ... print i**2 #doctest: +ELLIPSIS
+ 0
+ ...
+ 1
+ ...
+ 36
+ ...
+ ...
+ 49
+ 64
+ ......
+ 9801
+ ...
+
The UNIFIED_DIFF flag causes failures that involve multi-line expected
and actual outputs to be displayed using a unified diff:
More information about the Python-checkins
mailing list