From 33523c9f95d47dec1a06ef2515af269e91be19b5 Mon Sep 17 00:00:00 2001 From: Alex Gaynor Date: Tue, 22 Jun 2010 18:08:47 +0000 Subject: [PATCH] [soc2010/query-refactor] Implemented __gt. git-svn-id: http://code.djangoproject.com/svn/django/branches/soc2010/query-refactor@13381 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/contrib/mongodb/compiler.py | 1 + tests/regressiontests/mongodb/tests.py | 32 ++++++++++++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/django/contrib/mongodb/compiler.py b/django/contrib/mongodb/compiler.py index 4a42e677a5..880f9bc7cd 100644 --- a/django/contrib/mongodb/compiler.py +++ b/django/contrib/mongodb/compiler.py @@ -9,6 +9,7 @@ class SQLCompiler(object): "exact": lambda params, value_annotation, negated: params[0], "lt": lambda params, value_annotation, negated: {"$lt": params[0]}, "isnull": lambda params, value_annotation, negated: {"$ne": None} if value_annotation == negated else None, + "gt": lambda params, value_annotation, negated: {"$gt": params[0]}, } def __init__(self, query, connection, using): diff --git a/tests/regressiontests/mongodb/tests.py b/tests/regressiontests/mongodb/tests.py index 255d72acef..5c58f81171 100644 --- a/tests/regressiontests/mongodb/tests.py +++ b/tests/regressiontests/mongodb/tests.py @@ -224,3 +224,35 @@ class MongoTestCase(TestCase): ], lambda g: g.name ) + + def test_gt(self): + q = Group.objects.create(name="Queen", year_formed=1971) + e = Group.objects.create(name="The E Street Band", year_formed=1972) + + self.assertQuerysetEqual( + Group.objects.filter(year_formed__gt=1970), [ + "Queen", + "The E Street Band", + ], + lambda g: g.name + ) + + self.assertQuerysetEqual( + Group.objects.filter(year_formed__gt=1971), [ + "The E Street Band", + ], + lambda g: g.name + ) + + self.assertQuerysetEqual( + Group.objects.filter(year_formed__gt=1972), + [], + lambda g: g.name + ) + + self.assertQuerysetEqual( + Group.objects.exclude(year_formed__gt=1971), [ + "Queen", + ], + lambda g: g.name, + )