From 18149fadb6a78a736d434634939074ea34bee79b Mon Sep 17 00:00:00 2001 From: Ana Krivokapic Date: Mon, 15 Apr 2013 15:15:02 +0200 Subject: Do not sort dictionaries in assert_deepequal utility function Sorting lists of dictionaries in assert_deepequal was causing inconsistencies in unit test execution. To fix this, do not sort lists if their elements are dictionaries. https://fedorahosted.org/freeipa/ticket/3562 --- tests/util.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'tests/util.py') diff --git a/tests/util.py b/tests/util.py index ed62a223..117d2c83 100644 --- a/tests/util.py +++ b/tests/util.py @@ -316,8 +316,13 @@ def assert_deepequal(expected, got, doc='', stack=tuple()): raise AssertionError( LEN % (doc, len(expected), len(got), expected, got, stack) ) - s_got = sorted(got) - s_expected = sorted(expected) + # Sort list elements, unless they are dictionaries + if expected and isinstance(expected[0], dict): + s_got = got + s_expected = expected + else: + s_got = sorted(got) + s_expected = sorted(expected) for (i, e_sub) in enumerate(s_expected): g_sub = s_got[i] assert_deepequal(e_sub, g_sub, doc, stack + (i,)) -- cgit