[Zope-dev] Get rid of doctest.py in zope.testing? (Was: Bootstrapping ZCA for Python 3.)

Benji York benji at zope.com
Mon Dec 7 17:13:47 EST 2009


On Mon, Dec 7, 2009 at 4:08 PM, Lennart Regebro <regebro at gmail.com> wrote:
> For example: Exceptions in Python 3 print out the whole module path of
> the exception, while in Python 2 it's only the classname: Immediate
> doctest failure. This is fixable in your doctests by trapping the
> exception instead, which is what I've done.

You can also use a normalizer.  They make dealing with these sorts of
inter-Python formatting differences pretty easy.

> Efforts to remove doctests failed on the INTERPRET_FOOTNOTES options,
> which the standard Python doctests doesn't support. A quick search
> turns out that ZODB, zc.catalog, zc.relation, zc.async, zc.sharing,
> zc.freeze  and lovely.remotetask uses it, maybe more.

Those tests could probably use Manuel's footnote support instead, but
that would add one more dependency (Manuel) that would have to be ported
to Python 3 -- and I don't have any expectation that I'll be doing that
in the near future.

> I really think it's a bad idea to have a special version of
> doctest.py. I think we should get rid of it.

I'd like for them to be unified too, but even ignoring
INTERPRET_FOOTNOTES, the two have drifted apart quite a bit.  The last
time I looked at it I stopped after spending several frustrating hours
comparing diffs and trying to get one's tests to run on the other.

Maybe you'll have more success than I did.
-- 
Benji York


More information about the Zope-Dev mailing list