Added sort method to QuerySet

This commit is contained in:
Harry Marr
2009-12-18 18:41:44 +00:00
parent 44fc9096a4
commit 5e6a6aa886
3 changed files with 37 additions and 1 deletions

View File

@@ -137,6 +137,25 @@ class QuerySetTest(unittest.TestCase):
self.Person.objects.delete()
self.assertEqual(self.Person.objects.count(), 0)
def test_sort(self):
"""Ensure that QuerySets may be sorted.
"""
self.Person(name="User A", age=20).save()
self.Person(name="User B", age=40).save()
self.Person(name="User C", age=30).save()
names = [p.name for p in self.Person.objects.sort('-age')]
self.assertEqual(names, ['User B', 'User C', 'User A'])
names = [p.name for p in self.Person.objects.sort('+age')]
self.assertEqual(names, ['User A', 'User C', 'User B'])
names = [p.name for p in self.Person.objects.sort('age')]
self.assertEqual(names, ['User A', 'User C', 'User B'])
ages = [p.age for p in self.Person.objects.sort('-name')]
self.assertEqual(ages, [30, 40, 20])
def tearDown(self):
self.Person.drop_collection()