doctest fails to NORMALIZE_WHITESPACE ?
Peter Otten
__peter__ at web.de
Sat Dec 17 05:00:32 EST 2005
David MacKay wrote:
> I really like doctest, but sometimes doctest gives a failure when the
> output looks absolutely fine to me -- indeed, even after I have gone to
> considerable effort to make my documentation match the output perfectly.
> The piece of source code concerned is here:
>
> >>> c = []; \
> c.append(node(0.5,1,'a')); \
> c.append(node(0.25,2,'b')); \
> c.append(node(0.125,3,'c')); \
> c.append(node(0.125,4,'d')); \
> iterate(c) ; reportcode(c) # doctest:
You have to suppress the return value of iterate()
dummy = iterate(c); reportcode(c)
> +NORMALIZE_WHITESPACE, +ELLIPSIS
> #Symbol Count Codeword
> a (0.5) 1
> b (0.25) 01
> c (0.12) 000
> d (0.12) 001
> """
>
> And the output is:
>
> Expected:
> #Symbol Count Codeword
> a (0.5) 1
> Got:
> <__main__.internalnode instance at 0xb7aee76c>
This is the result of iterate(c). The interactive interpreter ignores None
return values but prints the repr() of everything else. doctest emulates
that behaviour.
Peter
More information about the Python-list
mailing list