This commit: 1. Formats all of our existing code using `black`. 2. Adds a note about using `black` to `CONTRIBUTING.rst`. 3. Runs `black --check` as part of CI (failing builds that aren't properly formatted).
62 lines
1.6 KiB
Python
62 lines
1.6 KiB
Python
import pickle
|
|
from datetime import datetime
|
|
|
|
from mongoengine import *
|
|
from mongoengine import signals
|
|
|
|
|
|
class PickleEmbedded(EmbeddedDocument):
|
|
date = DateTimeField(default=datetime.now)
|
|
|
|
|
|
class PickleTest(Document):
|
|
number = IntField()
|
|
string = StringField(choices=(("One", "1"), ("Two", "2")))
|
|
embedded = EmbeddedDocumentField(PickleEmbedded)
|
|
lists = ListField(StringField())
|
|
photo = FileField()
|
|
|
|
|
|
class NewDocumentPickleTest(Document):
|
|
number = IntField()
|
|
string = StringField(choices=(("One", "1"), ("Two", "2")))
|
|
embedded = EmbeddedDocumentField(PickleEmbedded)
|
|
lists = ListField(StringField())
|
|
photo = FileField()
|
|
new_field = StringField()
|
|
|
|
|
|
class PickleDynamicEmbedded(DynamicEmbeddedDocument):
|
|
date = DateTimeField(default=datetime.now)
|
|
|
|
|
|
class PickleDynamicTest(DynamicDocument):
|
|
number = IntField()
|
|
|
|
|
|
class PickleSignalsTest(Document):
|
|
number = IntField()
|
|
string = StringField(choices=(("One", "1"), ("Two", "2")))
|
|
embedded = EmbeddedDocumentField(PickleEmbedded)
|
|
lists = ListField(StringField())
|
|
|
|
@classmethod
|
|
def post_save(self, sender, document, created, **kwargs):
|
|
pickled = pickle.dumps(document)
|
|
|
|
@classmethod
|
|
def post_delete(self, sender, document, **kwargs):
|
|
pickled = pickle.dumps(document)
|
|
|
|
|
|
signals.post_save.connect(PickleSignalsTest.post_save, sender=PickleSignalsTest)
|
|
signals.post_delete.connect(PickleSignalsTest.post_delete, sender=PickleSignalsTest)
|
|
|
|
|
|
class Mixin(object):
|
|
name = StringField()
|
|
|
|
|
|
class Base(Document):
|
|
meta = {"allow_inheritance": True}
|