From ea913835586246a85d3cfe66bf81eecf5a63ee58 Mon Sep 17 00:00:00 2001 From: Stefan Wojcik Date: Mon, 28 Nov 2016 16:56:18 -0500 Subject: [PATCH] fix a test that fails from time to time depending on an order of a dict --- tests/document/indexes.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tests/document/indexes.py b/tests/document/indexes.py index e13d8b84..eb1b4d11 100644 --- a/tests/document/indexes.py +++ b/tests/document/indexes.py @@ -844,7 +844,12 @@ class IndexesTest(unittest.TestCase): self.assertEqual({'text': 'OK', '_id': {'term': 'ok', 'name': 'n'}}, report.to_mongo()) - self.assertEqual(report, ReportDictField.objects.get(pk=my_key)) + + # We can't directly call ReportDictField.objects.get(pk=my_key), + # because dicts are unordered, and if the order in MongoDB is + # different than the one in `my_key`, this test will fail. + self.assertEqual(report, ReportDictField.objects.get(pk__name=my_key['name'])) + self.assertEqual(report, ReportDictField.objects.get(pk__term=my_key['term'])) def test_string_indexes(self):