On Jul 20, 2007, at 5:27 AM, Philipp von Weitershausen wrote:
Marius Gedminas wrote:
doctests have special rules for exceptions that are different from
the
rules of normal output matching.
If a statement raises an exception, the output part must be of the
form
Traceback (most recent call last):
...
<exception type>: <exception value>
You can use ellipsis in the exception value part, IIRC.
But I wouldn't recommend using them. Sometimes, using ellipses are
fine, but generally they obfuscate the doctest when you're reading
it. I suggesting using the regex-normalizer [1]. There are many
packages out there that use it if you're looking for examples.
http://svn.zope.org/zope.testing/trunk/src/zope/testing/
renormalizing.py?rev=66267&view=auto
BTW, a small useful easy project that I don't have time for would be
to generalize the renormalizer to allow other objects besides regexes.
You now give this a sequences of regex/replacement pairs.
It would be nice to allow callables in addition to regexs.
Basically, allow items in the sequence to be either:
- a regex+replacement tuple, or
- a callable transformer that reads the text and returns new text.
While regexs and replacements are very powerful, there've been times
when I wanted the full generality of Python. I ended up subclassing
the renormalizer in these cases, but would have preferred not to have
had to do so.
Jim
--
Jim Fulton mailto:[EMAIL PROTECTED] Python
Powered!
CTO (540) 361-1714
http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org
_______________________________________________
Zope3-dev mailing list
Zope3-dev@zope.org
Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com