(self)
| 5140 | assert doc_objects == Doc.objects.from_json(json_data) |
| 5141 | |
| 5142 | def test_json_complex(self): |
| 5143 | class EmbeddedDoc(EmbeddedDocument): |
| 5144 | pass |
| 5145 | |
| 5146 | class Simple(Document): |
| 5147 | pass |
| 5148 | |
| 5149 | class Doc(Document): |
| 5150 | string_field = StringField(default="1") |
| 5151 | int_field = IntField(default=1) |
| 5152 | float_field = FloatField(default=1.1) |
| 5153 | boolean_field = BooleanField(default=True) |
| 5154 | datetime_field = DateTimeField(default=datetime.datetime.now) |
| 5155 | embedded_document_field = EmbeddedDocumentField( |
| 5156 | EmbeddedDoc, default=lambda: EmbeddedDoc() |
| 5157 | ) |
| 5158 | list_field = ListField(default=lambda: [1, 2, 3]) |
| 5159 | dict_field = DictField(default=lambda: {"hello": "world"}) |
| 5160 | objectid_field = ObjectIdField(default=ObjectId) |
| 5161 | reference_field = ReferenceField(Simple, default=lambda: Simple().save()) |
| 5162 | map_field = MapField(IntField(), default=lambda: {"simple": 1}) |
| 5163 | decimal_field = DecimalField(default=1.0) |
| 5164 | complex_datetime_field = ComplexDateTimeField(default=datetime.datetime.now) |
| 5165 | url_field = URLField(default="http://garbage.org") |
| 5166 | dynamic_field = DynamicField(default=1) |
| 5167 | generic_reference_field = GenericReferenceField( |
| 5168 | default=lambda: Simple().save() |
| 5169 | ) |
| 5170 | sorted_list_field = SortedListField(IntField(), default=lambda: [1, 2, 3]) |
| 5171 | email_field = EmailField(default="ross@example.com") |
| 5172 | geo_point_field = GeoPointField(default=lambda: [1, 2]) |
| 5173 | sequence_field = SequenceField() |
| 5174 | uuid_field = UUIDField(default=uuid.uuid4) |
| 5175 | generic_embedded_document_field = GenericEmbeddedDocumentField( |
| 5176 | default=lambda: EmbeddedDoc() |
| 5177 | ) |
| 5178 | |
| 5179 | Simple.drop_collection() |
| 5180 | Doc.drop_collection() |
| 5181 | |
| 5182 | Doc().save() |
| 5183 | json_data = Doc.objects.to_json() |
| 5184 | doc_objects = list(Doc.objects) |
| 5185 | |
| 5186 | assert doc_objects == Doc.objects.from_json(json_data) |
| 5187 | |
| 5188 | def test_as_pymongo(self): |
| 5189 | class LastLogin(EmbeddedDocument): |
nothing calls this directly
no test coverage detected