Added regression test for bug with DictField and numeric keys.

When a DictField has numeric fields, BaseDocument._lookup_field doesn't
work correclty.
This commit is contained in:
Loic Raucy 2013-10-17 16:26:19 +02:00
parent 1145c72b01
commit 1978dc80eb

View File

@ -3367,6 +3367,17 @@ class QuerySetTest(unittest.TestCase):
self.assertEqual(1, MyDoc.objects.update_one(upsert=True, inc__47=1)) self.assertEqual(1, MyDoc.objects.update_one(upsert=True, inc__47=1))
self.assertEqual(MyDoc.objects.get()['47'], 1) self.assertEqual(MyDoc.objects.get()['47'], 1)
def test_dictfield_key_looks_like_a_digit(self):
"""Only should work with DictField even if they have numeric keys."""
class MyDoc(Document):
test = DictField()
MyDoc.drop_collection()
doc = MyDoc(test={'47': 1})
doc.save()
self.assertEqual(MyDoc.objects.only('test__47').get().test['47'], 1)
def test_read_preference(self): def test_read_preference(self):
class Bar(Document): class Bar(Document):
pass pass