aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/djapp/models.py17
-rw-r--r--tests/test_django.py12
2 files changed, 29 insertions, 0 deletions
diff --git a/tests/djapp/models.py b/tests/djapp/models.py
index 35c765f..96ee5cf 100644
--- a/tests/djapp/models.py
+++ b/tests/djapp/models.py
@@ -87,3 +87,20 @@ else:
class WithSignals(models.Model):
foo = models.CharField(max_length=20)
+
+
+class CustomQuerySet(models.QuerySet):
+ pass
+
+
+class CustomManager(models.Manager):
+
+ def create(self, arg=None, **kwargs):
+ return super(CustomManager, self).create(**kwargs)
+
+
+class WithCustomManager(models.Model):
+
+ foo = models.CharField(max_length=20)
+
+ objects = CustomManager.from_queryset(CustomQuerySet)()
diff --git a/tests/test_django.py b/tests/test_django.py
index 2744032..9ac8f5c 100644
--- a/tests/test_django.py
+++ b/tests/test_django.py
@@ -157,6 +157,13 @@ if django is not None:
model = models.WithSignals
+ class WithCustomManagerFactory(factory.django.DjangoModelFactory):
+ class Meta:
+ model = models.WithCustomManager
+
+ foo = factory.Sequence(lambda n: "foo%d" % n)
+
+
@unittest.skipIf(django is None, "Django not installed.")
class ModelTests(django_test.TestCase):
def test_unset_model(self):
@@ -706,5 +713,10 @@ class PreventSignalsTestCase(unittest.TestCase):
self.assertSignalsReactivated()
+class DjangoCustomManagerTestCase(django_test.TestCase):
+
+ def test_extra_args(self):
+ model = WithCustomManagerFactory(arg='foo')
+
if __name__ == '__main__': # pragma: no cover
unittest.main()