SciPost Code Repository

Skip to content
Snippets Groups Projects
Commit 97fea894 authored by Geert Kapteijns's avatar Geert Kapteijns
Browse files

Move prefill logic for DOI query to form. Write view test.

parent 095a1dbc
No related branches found
No related tags found
No related merge requests found
...@@ -34,6 +34,10 @@ class DOIToQueryForm(forms.Form): ...@@ -34,6 +34,10 @@ class DOIToQueryForm(forms.Form):
def commentary_exists(self, input_doi): def commentary_exists(self, input_doi):
return Commentary.objects.filter(pub_DOI=input_doi).exists() return Commentary.objects.filter(pub_DOI=input_doi).exists()
def request_published_article_form_prefill_data(self):
additional_form_data = {'type': 'published', 'pub_DOI': self.cleaned_data['doi']}
return {**self.crossref_data, **additional_form_data}
class IdentifierToQueryForm(forms.Form): class IdentifierToQueryForm(forms.Form):
identifier = forms.CharField(widget=forms.TextInput( identifier = forms.CharField(widget=forms.TextInput(
......
...@@ -59,8 +59,7 @@ class PrefillUsingDOITest(TestCase): ...@@ -59,8 +59,7 @@ class PrefillUsingDOITest(TestCase):
request.user = UserFactory() request.user = UserFactory()
response = prefill_using_DOI(request) response = prefill_using_DOI(request)
# Not sure what to test here self.assertEqual(response.status_code, 200)
raise NotImplementedError
class VetCommentaryRequestsTest(TestCase): class VetCommentaryRequestsTest(TestCase):
......
...@@ -91,10 +91,8 @@ def prefill_using_DOI(request): ...@@ -91,10 +91,8 @@ def prefill_using_DOI(request):
doi_query_form = DOIToQueryForm(request.POST) doi_query_form = DOIToQueryForm(request.POST)
# The form checks if doi is valid and commentary doesn't already exist. # The form checks if doi is valid and commentary doesn't already exist.
if doi_query_form.is_valid(): if doi_query_form.is_valid():
doi = doi_query_form.cleaned_data['doi'] prefill_data = doi_query_form.request_published_article_form_prefill_data()
additional_form_data = {'type': 'published', 'pub_DOI': doi} form = RequestPublishedArticleForm(initial=prefill_data)
total_form_data = {**doi_query_form.crossref_data, **additional_form_data}
form = RequestPublishedArticleForm(initial=total_form_data)
else: else:
form = RequestPublishedArticleForm() form = RequestPublishedArticleForm()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment