1
0
mirror of https://github.com/django/django.git synced 2025-10-24 14:16:09 +00:00

Allowed a message to be passed to assertQuerysetEqual to make it consistent with other assert methods.

This commit is contained in:
Chris Bailey
2014-02-10 05:18:20 -05:00
committed by Tim Graham
parent 21f034165c
commit c5395eef76
2 changed files with 11 additions and 4 deletions

View File

@@ -825,17 +825,17 @@ class TransactionTestCase(SimpleTestCase):
allow_cascade=self.available_apps is not None,
inhibit_post_migrate=self.available_apps is not None)
def assertQuerysetEqual(self, qs, values, transform=repr, ordered=True):
def assertQuerysetEqual(self, qs, values, transform=repr, ordered=True, msg=None):
items = six.moves.map(transform, qs)
if not ordered:
return self.assertEqual(set(items), set(values))
return self.assertEqual(set(items), set(values), msg=msg)
values = list(values)
# For example qs.iterator() could be passed as qs, but it does not
# have 'ordered' attribute.
if len(values) > 1 and hasattr(qs, 'ordered') and not qs.ordered:
raise ValueError("Trying to compare non-ordered queryset "
"against more than one ordered values")
return self.assertEqual(list(items), values)
return self.assertEqual(list(items), values, msg=msg)
def assertNumQueries(self, num, func=None, *args, **kwargs):
using = kwargs.pop("using", DEFAULT_DB_ALIAS)