diff --git a/submissions/constants.py b/submissions/constants.py index d937973d28acfbcd1e85fce61eb2ba14c0c928de..da15bf7acf1a8dbe0bcf274b62e3e41d00513f2a 100644 --- a/submissions/constants.py +++ b/submissions/constants.py @@ -4,6 +4,8 @@ STATUS_REVISION_REQUESTED = 'revision_requested' STATUS_EIC_ASSIGNED = 'EICassigned' STATUS_AWAITING_ED_REC = 'awaiting_ed_rec' STATUS_REVIEW_CLOSED = 'review_closed' +STATUS_ACCEPTED = 'accepted' +STATUS_PUBLISHED = 'published' SUBMISSION_STATUS = ( (STATUS_UNASSIGNED, 'Unassigned, undergoing pre-screening'), (STATUS_RESUBMISSION_INCOMING, 'Resubmission incoming'), @@ -21,10 +23,10 @@ SUBMISSION_STATUS = ( ('put_to_EC_voting', 'Undergoing voting at the Editorial College'), (STATUS_AWAITING_ED_REC, 'Awaiting Editorial Recommendation'), ('EC_vote_completed', 'Editorial College voting rounded up'), - ('accepted', 'Publication decision taken: accept'), + (STATUS_ACCEPTED, 'Publication decision taken: accept'), ('rejected', 'Publication decision taken: reject'), ('rejected_visible', 'Publication decision taken: reject (still publicly visible)'), - ('published', 'Published'), + (STATUS_PUBLISHED, 'Published'), # If withdrawn: ('withdrawn', 'Withdrawn by the Authors'), ) diff --git a/submissions/factories.py b/submissions/factories.py index 193aaffa848e451bd59b556cf8caae7f3a5be13d..f69a50ec0207ff86b544d8af501ecab264df8e44 100644 --- a/submissions/factories.py +++ b/submissions/factories.py @@ -6,10 +6,11 @@ from django.utils import timezone from scipost.factories import ContributorFactory from scipost.models import Contributor -from journals.constants import SCIPOST_JOURNAL_PHYSICS, SCIPOST_JOURNALS_DOMAINS -from common.helpers import random_arxiv_identifier_without_version_number +from journals.constants import SCIPOST_JOURNALS_DOMAINS +from common.helpers import random_arxiv_identifier_without_version_number, random_scipost_journal -from .constants import STATUS_UNASSIGNED, STATUS_EIC_ASSIGNED, STATUS_RESUBMISSION_INCOMING +from .constants import STATUS_UNASSIGNED, STATUS_EIC_ASSIGNED, STATUS_RESUBMISSION_INCOMING,\ + STATUS_PUBLISHED from .models import Submission from faker import Faker @@ -21,9 +22,9 @@ class SubmissionFactory(factory.django.DjangoModelFactory): author_list = factory.Faker('name') submitted_by = factory.SubFactory(ContributorFactory) - submitted_to_journal = SCIPOST_JOURNAL_PHYSICS + submitted_to_journal = factory.Sequence(lambda n: random_scipost_journal()) title = factory.lazy_attribute(lambda x: Faker().sentence()) - abstract = factory.lazy_attribute(Faker().text()) + abstract = factory.lazy_attribute(lambda x: Faker().paragraph()) arxiv_link = factory.Faker('uri') arxiv_identifier_wo_vn_nr = factory.Sequence( lambda n: random_arxiv_identifier_without_version_number()) @@ -62,7 +63,6 @@ class SubmissionFactory(factory.django.DjangoModelFactory): class EICassignedSubmissionFactory(SubmissionFactory): status = STATUS_EIC_ASSIGNED - editor_in_charge = factory.SubFactory(ContributorFactory) open_for_commenting = True open_for_reporting = True @@ -77,3 +77,10 @@ class UnassignedSubmissionFactory(SubmissionFactory): class ResubmittedScreeningSubmissionFactory(SubmissionFactory): status = STATUS_RESUBMISSION_INCOMING + + +class PublishedSubmissionFactory(SubmissionFactory): + status = STATUS_PUBLISHED + open_for_commenting = False + open_for_reporting = False + is_current = True