Skip to content

Commit

Permalink
Post refactor cleanups (ref: meta cleanups)
Browse files Browse the repository at this point in the history
  • Loading branch information
rozza committed Aug 17, 2012
1 parent 19da228 commit 66279bd
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 11 deletions.
4 changes: 1 addition & 3 deletions docs/changelog.rst
Expand Up @@ -4,9 +4,7 @@ Changelog

Changes in 0.7.X
=================
- Embedded Documents dont care about inheritance


- Embedded Documents no longer handle meta definitions
- Use weakref proxies in base lists / dicts (MongoEngine/mongoengine#74)
- Improved queryset filtering (hmarr/mongoengine#554)
- Fixed Dynamic Documents and Embedded Documents (hmarr/mongoengine#561)
Expand Down
1 change: 0 additions & 1 deletion mongoengine/document.py
Expand Up @@ -394,7 +394,6 @@ class DynamicDocument(Document):
__metaclass__ = TopLevelDocumentMetaclass

_dynamic = True
meta = {'abstract': True}

def __delattr__(self, *args, **kwargs):
"""Deletes the attribute by setting to None and allowing _delta to unset
Expand Down
14 changes: 7 additions & 7 deletions tests/test_document.py
Expand Up @@ -2665,34 +2665,34 @@ def test_reverse_delete_rule_cascade_and_nullify_complex_field(self):
complex fields.
"""

class BlogPost2(Document):
class BlogPost(Document):
content = StringField()
authors = ListField(ReferenceField(self.Person, reverse_delete_rule=CASCADE))
reviewers = ListField(ReferenceField(self.Person, reverse_delete_rule=NULLIFY))

self.Person.drop_collection()

BlogPost2.drop_collection()
BlogPost.drop_collection()

author = self.Person(name='Test User')
author.save()

reviewer = self.Person(name='Re Viewer')
reviewer.save()

post = BlogPost2(content='Watched some TV')
post = BlogPost(content='Watched some TV')
post.authors = [author]
post.reviewers = [reviewer]
post.save()

# Deleting the reviewer should have no effect on the BlogPost2
# Deleting the reviewer should have no effect on the BlogPost
reviewer.delete()
self.assertEqual(len(BlogPost2.objects), 1)
self.assertEqual(BlogPost2.objects.get().reviewers, [])
self.assertEqual(len(BlogPost.objects), 1)
self.assertEqual(BlogPost.objects.get().reviewers, [])

# Delete the Person, which should lead to deletion of the BlogPost, too
author.delete()
self.assertEqual(len(BlogPost2.objects), 0)
self.assertEqual(len(BlogPost.objects), 0)

def test_two_way_reverse_delete_rule(self):
"""Ensure that Bi-Directional relationships work with
Expand Down

0 comments on commit 66279bd

Please sign in to comment.