Added test case for _delta

refs: hmarr/mongoengine#518
This commit is contained in:
Ross Lawley 2012-06-19 10:08:56 +01:00
parent 45d3a7f6ff
commit 581605e0e2

View File

@ -1638,6 +1638,35 @@ class DocumentTest(unittest.TestCase):
site = Site.objects.first() site = Site.objects.first()
self.assertEqual(site.page.log_message, "Error: Dummy message") self.assertEqual(site.page.log_message, "Error: Dummy message")
def test_circular_reference_deltas(self):
class Person(Document):
name = StringField()
owns = ListField(ReferenceField('Organization'))
class Organization(Document):
name = StringField()
owner = ReferenceField('Person')
Person.drop_collection()
Organization.drop_collection()
person = Person(name="owner")
person.save()
organization = Organization(name="company")
organization.save()
person.owns.append(organization)
organization.owner = person
person.save()
organization.save()
p = Person.objects[0].select_related()
o = Organization.objects.first()
self.assertEquals(p.owns[0], o)
self.assertEquals(o.owner, p)
def test_delta(self): def test_delta(self):
class Doc(Document): class Doc(Document):