Author: Alex Date: 2010-06-22 13:09:25 -0500 (Tue, 22 Jun 2010) New Revision: 13384
Modified: django/branches/soc2010/query-refactor/django/contrib/mongodb/compiler.py django/branches/soc2010/query-refactor/tests/regressiontests/mongodb/tests.py Log: [soc2010/query-refactor] Implemented __in. Modified: django/branches/soc2010/query-refactor/django/contrib/mongodb/compiler.py =================================================================== --- django/branches/soc2010/query-refactor/django/contrib/mongodb/compiler.py 2010-06-22 18:09:15 UTC (rev 13383) +++ django/branches/soc2010/query-refactor/django/contrib/mongodb/compiler.py 2010-06-22 18:09:25 UTC (rev 13384) @@ -10,6 +10,7 @@ "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]}, + "in": lambda params, value_annotation, negated: {"$in": params}, } def __init__(self, query, connection, using): Modified: django/branches/soc2010/query-refactor/tests/regressiontests/mongodb/tests.py =================================================================== --- django/branches/soc2010/query-refactor/tests/regressiontests/mongodb/tests.py 2010-06-22 18:09:15 UTC (rev 13383) +++ django/branches/soc2010/query-refactor/tests/regressiontests/mongodb/tests.py 2010-06-22 18:09:25 UTC (rev 13384) @@ -258,3 +258,29 @@ ], lambda g: g.name, ) + + def test_in(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__in=[1972]), [ + "The E Street Band", + ], + lambda g: g.name, + ) + + self.assertQuerysetEqual( + Group.objects.filter(year_formed__in=[1972, 1971]), [ + "Queen", + "The E Street Band", + ], + lambda g: g.name + ) + + self.assertQuerysetEqual( + Group.objects.exclude(year_formed__in=[1972]), [ + "Queen", + ], + lambda g: g.name, + ) -- You received this message because you are subscribed to the Google Groups "Django updates" group. To post to this group, send email to django-upda...@googlegroups.com. To unsubscribe from this group, send email to django-updates+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-updates?hl=en.