From 9176facc6b4eb1ca9defd99a95873d1c59482c1a Mon Sep 17 00:00:00 2001 From: Jorran de Wit <jorrandewit@scipost.org> Date: Thu, 9 Sep 2021 22:11:54 +0200 Subject: [PATCH] Fix Submission factories --- scipost_django/journals/factories.py | 4 ++-- scipost_django/submissions/factories.py | 11 +++++++---- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/scipost_django/journals/factories.py b/scipost_django/journals/factories.py index a2d5dcd61..5ac021101 100644 --- a/scipost_django/journals/factories.py +++ b/scipost_django/journals/factories.py @@ -37,8 +37,8 @@ class ReferenceFactory(factory.django.DjangoModelFactory): class JournalFactory(factory.django.DjangoModelFactory): college = factory.SubFactory('colleges.factories.CollegeFactory') - name = 'Fake Journal' - doi_label = 'SciPostFakeJournal' + name = factory.Sequence(lambda n: 'Fake Journal %s' % n) + doi_label = factory.Sequence(lambda n: 'SciPostFakeJournal%s' % n) issn = factory.lazy_attribute(lambda n: random_digits(8)) structure = factory.Iterator(JOURNAL_STRUCTURE, getter=lambda c: c[0]) diff --git a/scipost_django/submissions/factories.py b/scipost_django/submissions/factories.py index f4bb7a0df..970cac1d5 100644 --- a/scipost_django/submissions/factories.py +++ b/scipost_django/submissions/factories.py @@ -11,7 +11,7 @@ from scipost.constants import SCIPOST_APPROACHES from scipost.models import Contributor from journals.models import Journal from common.helpers import random_scipost_report_doi_label -from ontology.models import Specialty +from ontology.models import Specialty, AcademicField from .constants import ( STATUS_UNASSIGNED, STATUS_EIC_ASSIGNED, STATUS_INCOMING, STATUS_PUBLISHED, @@ -29,11 +29,11 @@ class SubmissionFactory(factory.django.DjangoModelFactory): author_list = factory.Faker('name') submitted_by = factory.SubFactory('scipost.factories.ContributorFactory') - submitted_to = factory.SubFactory('journals.factories.JournalFactory') + submitted_to = factory.Iterator(Journal.objects.all()) title = factory.Faker('sentence') abstract = factory.Faker('paragraph', nb_sentences=10) list_of_changes = factory.Faker('paragraph', nb_sentences=10) - acad_field = factory.SubFactory('ontology.factories.AcademicFieldFactory') + acad_field = factory.Iterator(AcademicField.objects.all()) approaches = factory.Iterator(SCIPOST_APPROACHES, getter=lambda c: [c[0],]) abstract = factory.Faker('paragraph') author_comments = factory.Faker('paragraph') @@ -56,6 +56,9 @@ class SubmissionFactory(factory.django.DjangoModelFactory): if Journal.objects.count() < 3: from journals.factories import JournalFactory JournalFactory.create_batch(3) + if AcademicField.objects.count() < 10: + from ontology.factories import AcademicFieldFactory + AcademicFieldFactory.create_batch(10) if Specialty.objects.count() < 5: from ontology.factories import SpecialtyFactory SpecialtyFactory.create_batch(5) @@ -315,7 +318,7 @@ class RefereeInvitationFactory(factory.django.DjangoModelFactory): referee = factory.lazy_attribute(lambda o: Contributor.objects.exclude( id__in=o.submission.authors.all()).order_by('?').first()) - title = factory.lazy_attribute(lambda o: o.referee.title) + title = factory.lazy_attribute(lambda o: o.referee.profile.title) first_name = factory.lazy_attribute(lambda o: o.referee.user.first_name) last_name = factory.lazy_attribute(lambda o: o.referee.user.last_name) email_address = factory.lazy_attribute(lambda o: o.referee.user.email) -- GitLab