From f28e1b8c90eeb977a1ee8be625bdc3ae5143ad51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bastien=20G=C3=A9rard?= Date: Sat, 11 May 2019 22:31:32 +0200 Subject: [PATCH] improve coverage of lazy ref field --- tests/fields/test_lazy_reference_field.py | 29 +++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/tests/fields/test_lazy_reference_field.py b/tests/fields/test_lazy_reference_field.py index a72e8cbe..d8031409 100644 --- a/tests/fields/test_lazy_reference_field.py +++ b/tests/fields/test_lazy_reference_field.py @@ -13,6 +13,35 @@ class TestLazyReferenceField(MongoDBTestCase): # with a document class name. self.assertRaises(ValidationError, LazyReferenceField, EmbeddedDocument) + def test___repr__(self): + class Animal(Document): + pass + + class Ocurrence(Document): + animal = LazyReferenceField(Animal) + + Animal.drop_collection() + Ocurrence.drop_collection() + + animal = Animal() + oc = Ocurrence(animal=animal) + self.assertIn('LazyReference', repr(oc.animal)) + + def test___getattr___unknown_attr_raises_attribute_error(self): + class Animal(Document): + pass + + class Ocurrence(Document): + animal = LazyReferenceField(Animal) + + Animal.drop_collection() + Ocurrence.drop_collection() + + animal = Animal().save() + oc = Ocurrence(animal=animal) + with self.assertRaises(AttributeError): + oc.animal.not_exist + def test_lazy_reference_simple(self): class Animal(Document): name = StringField()