Issue 14832: unittest's assertItemsEqual() method gives wrong order in error output (original) (raw)
I have the following line in a unit test in 2.7.3:
self.assertItemsEqual(['a', 'b', 'c'], ['a', 'b', 'c', 'd'])
I expect this output:
AssertionError: Element counts were not equal:
First has 0, Second has 1: 'd'
Instead I get this output:
AssertionError: Element counts were not equal:
First has 1, Second has 0: 'd'
I would expect 'First' to refer to the first sequence I pass to assertItemsEqual, not the second, and vice versa.
(Obviously in a trivial example like this it appears unimportant, but when debugging why a test has failed, the unexpected ordering can cause problems.)