From d4798e9c68576332c290ea22f727e1e3fd24a5c6 Mon Sep 17 00:00:00 2001
From: "J.-S. Caux" <J.S.Caux@uva.nl>
Date: Sun, 27 Sep 2020 08:31:21 +0200
Subject: [PATCH] Add ontology.factories

---
 ontology/factories.py | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)
 create mode 100644 ontology/factories.py

diff --git a/ontology/factories.py b/ontology/factories.py
new file mode 100644
index 000000000..7b68412e0
--- /dev/null
+++ b/ontology/factories.py
@@ -0,0 +1,38 @@
+__copyright__ = "Copyright © Stichting SciPost (SciPost Foundation)"
+__license__ = "AGPL v3"
+
+
+import factory
+
+from django.utils.text import slugify
+
+from .models import Branch, AcademicField, Specialty
+
+
+class BranchFactory(factory.django.DjangoModelFactory):
+    name = factory.LazyAttribute(lambda b: 'Branch %d' % b.order)
+    slug = factory.LazyAttribute(lambda b: slugify('branch-%d' % b.order))
+    order = factory.Sequence(lambda n: n)
+
+    class Meta:
+        model = Branch
+
+
+class AcademicFieldFactory(factory.django.DjangoModelFactory):
+    branch = factory.SubFactory(BranchFactory)
+    name = factory.LazyAttribute(lambda b: 'Field %d' % b.order)
+    slug = factory.LazyAttribute(lambda b: slugify('field-%d' % b.order))
+    order = factory.Sequence(lambda n: n)
+
+    class Meta:
+        model = AcademicField
+
+
+class SpecialtyFactory(factory.django.DjangoModelFactory):
+    acad_field = factory.SubFactory(AcademicField)
+    name = factory.LazyAttribute(lambda b: 'Specialty %d' % b.order)
+    slug = factory.LazyAttribute(lambda b: slugify('specialty-%d' % b.order))
+    order = factory.Sequence(lambda n: n)
+
+    class Meta:
+        model = Specialty
-- 
GitLab