diff --git a/commentaries/factories.py b/commentaries/factories.py index 60f1625f2f365bd240db1d1aa7e5d7beb2a9fa73..09d03427579627d8d36c091a6bf975c727dc8ba2 100644 --- a/commentaries/factories.py +++ b/commentaries/factories.py @@ -24,6 +24,7 @@ class CommentaryFactory(factory.django.DjangoModelFactory): arxiv_identifier = factory.Sequence(lambda n: random_arxiv_identifier_with_version_number()) author_list = factory.Faker('name') pub_abstract = factory.Faker('text') + pub_date = factory.Faker('date') @factory.post_generation def create_urls(self, create, extracted, **kwargs): diff --git a/commentaries/forms.py b/commentaries/forms.py index 5fd67a38dba9217f7bd873f6a1435ccff4e49a46..49c5e7bf7bc79044b65cd7a25ece983d33635cac 100644 --- a/commentaries/forms.py +++ b/commentaries/forms.py @@ -76,9 +76,6 @@ class RequestPublishedArticleForm(forms.ModelForm): 'discipline', 'domain', 'subject_area', 'pub_title', 'author_list', 'journal', 'volume', 'pages', 'pub_date', 'pub_DOI', 'pub_abstract' ] - widgets = { - 'metadata': forms.HiddenInput(), - } placeholders = { 'pub_DOI': 'ex.: 10.21468/00.000.000000', 'pub_date': 'Format: YYYY-MM-DD', @@ -100,12 +97,6 @@ class RequestPublishedArticleForm(forms.ModelForm): return input_doi - def save(self, *args): - commentary = super().save(*args) - commentary.metadata = self.metadata - commentary.save() - return commentary - class RequestCommentaryForm(forms.ModelForm): """Create new valid Commetary by user request""" diff --git a/commentaries/test_views.py b/commentaries/test_views.py index 2077489c0a13475745c6796199a5621532fd124e..1d99bcc8800387a0156567b745fc31ee2ace2dce 100644 --- a/commentaries/test_views.py +++ b/commentaries/test_views.py @@ -62,6 +62,23 @@ class PrefillUsingDOITest(TestCase): self.assertEqual(response.status_code, 200) +class RequestPublishedArticleTest(TestCase): + def setUp(self): + add_groups_and_permissions() + self.target = reverse('commentaries:request_published_article') + self.commentary_instance = UnvettedCommentaryFactory.build() + self.valid_form_data = model_form_data(self.commentary_instance, RequestPublishedArticleForm) + + def test_commentary_gets_created(self): + request = RequestFactory().post(self.target, self.valid_form_data) + request.user = UserFactory() + + self.assertEqual(Commentary.objects.count(), 0) + response = RequestPublishedArticle.as_view()(request) + self.assertEqual(Commentary.objects.count(), 1) + self.assertEqual(Commentary.objects.first().pub_DOI, self.valid_form_data['pub_DOI']) + + class VetCommentaryRequestsTest(TestCase): """Test cases for `vet_commentary_requests` view method""" diff --git a/commentaries/views.py b/commentaries/views.py index 63f9293afe49a230d702794d2854220bafea067f..f1ce56e669f6e2505834bd33e6bdda31cc53c563 100644 --- a/commentaries/views.py +++ b/commentaries/views.py @@ -80,10 +80,6 @@ class RequestPublishedArticle(CreateView): context['doi_query_form'] = DOIToQueryForm() return context - def form_valid(self, form): - form.type = "published" - return super(RequestPublishedArticle, self).form_valid(form) - @permission_required('scipost.can_request_commentary_pages', raise_exception=True) def prefill_using_DOI(request):