Re: zope.testing.doctestunit pprint and deprecation warnings

Martin Aspeli <[email protected]>
Newsgroups gmane.comp.web.zope.devel
Message-ID <[email protected]>
Hanno Schlichting wrote:
> On Wed, Dec 30, 2009 at 6:38 PM, Martijn Faassen<[email protected]>  wrote:
>> zope.testing.doctestunit emits a deprecation warning. It also defines a
>> function pprint. How does one use pprint without getting a deprecation
>> warning? It seems impossible now, and an equivalent pprint doesn't
>> appear to be in the standard library doctest..
>
> When I recently converted some tests, I replaced that pprint function
> with the one from the standard library:
>
> from pprint import pprint
>
> There weren't any differences in the output, as far as I could tell.

Not sure if this is related, but one thing I found which bit me recently 
is that prior to Python 2.5, pprint did not sort dict keys in the 
output. That means that a test like this:

  >>> pprint(foo)
  {'omega': 1, 'alpha': 2}

will pass on 2.4 and fail on 2.5/2.6; to fix it for 2.5/2.6 you do:

  >>> pprint(foo)
  {'alpha': 2, 'omega': 1}

but now it fails on 2.4. The only way I could find it make it work 
reliably was to not rely on dicts at all, but do:

  >>> pprint(sorted(foo.items())
  [('alpha', 2), ('omega', 1)]

Which works the same on both. I don't know if the zope.doctest pprint 
function was meant to fix this, but maybe it did?

Martin

-- 
Author of `Professional Plone Development`, a book for developers who
want to work with Plone. See http://martinaspeli.net/plone-book

_______________________________________________
Zope-Dev maillist  -  [email protected]
https://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 https://mail.zope.org/mailman/listinfo/zope-announce
 https://mail.zope.org/mailman/listinfo/zope )
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.