From dc1de7297b9b508afad9386285aebd57ac3f11f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rapha=C3=ABl=20Barrois?= Date: Sat, 12 Mar 2016 12:45:34 +0100 Subject: django: Clarify behavior around ``abstract=True`` See issue #280. --- tests/test_django.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tests/test_django.py b/tests/test_django.py index 103df91..08349b9 100644 --- a/tests/test_django.py +++ b/tests/test_django.py @@ -362,6 +362,22 @@ class DjangoAbstractBaseSequenceTestCase(django_test.TestCase): obj = ConcreteGrandSonFactory() self.assertEqual(1, obj.pk) + def test_optional_abstract(self): + """Users need not describe the factory for an abstract model as abstract.""" + class AbstractBaseFactory(factory.django.DjangoModelFactory): + class Meta: + model = models.AbstractBase + + foo = factory.Sequence(lambda n: "foo%d" % n) + + class ConcreteSonFactory(AbstractBaseFactory): + class Meta: + model = models.ConcreteSon + + obj = ConcreteSonFactory() + self.assertEqual(1, obj.pk) + self.assertEqual("foo0", obj.foo) + @unittest.skipIf(django is None, "Django not installed.") class DjangoRelatedFieldTestCase(django_test.TestCase): -- cgit v1.2.3