[New-bugs-announce] [issue19664] UserDict test assumes ordered dict repr
Larry Hastings
report at bugs.python.org
Wed Nov 20 18:09:42 CET 2013
New submission from Larry Hastings:
If you run Lib/test/test_userdict.py enough times, sooner or later it'll produce a spurious error. I wrote a shell script that ran "./python -m test test_userdict" a zillion times; here's a snippet of output from running that script:
[...]
1 test OK.
[1/1] test_userdict
1 test OK.
[1/1] test_userdict
1 test OK.
[1/1] test_userdict
test test_userdict failed -- Traceback (most recent call last):
File "/home/larry/src/python/clinic/Lib/test/test_userdict.py", line 48, in test_all
self.assertEqual(repr(u2), repr(d2))
AssertionError: "{'one': 1, 'two': 2}" != "{'two': 2, 'one': 1}"
- {'one': 1, 'two': 2}
+ {'two': 2, 'one': 1}
1 test failed:
test_userdict
[1/1] test_userdict
1 test OK.
[1/1] test_userdict
1 test OK.
[...]
Line 48 reads as follows:
self.assertEqual(repr(u2), repr(d2))
I realize this code is ancient--but it seems to rely on repr of a dict producing consistent output, which is silly and has always been wrong.
Raymond, you want to take this?
----------
components: Library (Lib)
messages: 203509
nosy: larry, rhettinger
priority: normal
severity: normal
stage: needs patch
status: open
title: UserDict test assumes ordered dict repr
type: behavior
versions: Python 3.4
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue19664>
_______________________________________
More information about the New-bugs-announce
mailing list