From 55ea57d03b995e125eefc12794502c24f0105008 Mon Sep 17 00:00:00 2001
From: Geert Kapteijns <ghkapteijns@gmail.com>
Date: Mon, 15 May 2017 14:58:44 +0200
Subject: [PATCH] move author list formatting to DOICaller

---
 commentaries/forms.py    |  2 --
 scipost/services.py      |  2 ++
 scipost/test_services.py | 39 ---------------------------------------
 3 files changed, 2 insertions(+), 41 deletions(-)

diff --git a/commentaries/forms.py b/commentaries/forms.py
index f3b768510..be071a9fb 100644
--- a/commentaries/forms.py
+++ b/commentaries/forms.py
@@ -36,7 +36,6 @@ class DOIToQueryForm(forms.Form):
 
     def request_published_article_form_prefill_data(self):
         additional_form_data = {'pub_DOI': self.cleaned_data['doi']}
-        self.crossref_data['author_list'] = ", ".join(self.crossref_data['author_list'])
         return {**self.crossref_data, **additional_form_data}
 
 
@@ -67,7 +66,6 @@ class ArxivQueryForm(forms.Form):
 
     def request_arxiv_preprint_form_prefill_data(self):
         additional_form_data = {'arxiv_identifier': self.cleaned_data['identifier']}
-        self.arxiv_data['author_list'] = ", ".join(self.arxiv_data['author_list'])
         return {**self.arxiv_data, **additional_form_data}
 
 
diff --git a/scipost/services.py b/scipost/services.py
index 111f9c381..f4f7fc7f2 100644
--- a/scipost/services.py
+++ b/scipost/services.py
@@ -31,6 +31,8 @@ class DOICaller:
         data = self._crossref_data
         pub_title = data['title'][0]
         author_list = ['{} {}'.format(author['given'], author['family']) for author in data['author']]
+        # author_list is given as a comma separated list of names on the relevant models (Commentary, Submission)
+        author_list = ", ".join(author_list)
         journal = data['container-title'][0]
         volume = data.get('volume', '')
         pages = self._get_pages(data)
diff --git a/scipost/test_services.py b/scipost/test_services.py
index c32d41cc8..727a20213 100644
--- a/scipost/test_services.py
+++ b/scipost/test_services.py
@@ -60,42 +60,3 @@ class DOICallerTest(TestCase):
     def test_valid_but_non_existent_doi(self):
         caller = DOICaller('10.21468/NonExistentJournal.2.2.012')
         self.assertEqual(caller.is_valid, False)
-
-# class ArxivCallerTestOld(TestCase):
-#     def test_correct_lookup(self):
-#         caller = ArxivCaller(Submission, '1611.09574v1')
-#
-#         caller.process()
-#
-#         self.assertEqual(caller.is_valid(), True)
-#         self.assertIn('entries', caller.metadata)
-#
-#     def test_errorcode_for_non_existing_paper(self):
-#         caller = ArxivCaller(Submission, '2611.09574v1')
-#
-#         caller.process()
-#         self.assertEqual(caller.is_valid(), False)
-#         self.assertEqual(caller.errorcode, 'preprint_does_not_exist')
-#
-#     def test_errorcode_for_bad_request(self):
-#         caller = ArxivCaller(Submission, '161109574v1')
-#
-#         caller.process()
-#         self.assertEqual(caller.is_valid(), False)
-#         self.assertEqual(caller.errorcode, 'arxiv_bad_request')
-#
-#     def test_errorcode_for_already_published_journal_ref(self):
-#         caller = ArxivCaller(Submission, '1412.0006v1')
-#
-#         caller.process()
-#         self.assertEqual(caller.is_valid(), False)
-#         self.assertEqual(caller.errorcode, 'paper_published_journal_ref')
-#         self.assertNotEqual(caller.arxiv_journal_ref, '')
-#
-#     def test_errorcode_no_version_nr(self):
-#         # Should be already caught in form validation
-#         caller = ArxivCaller(Submission, '1412.0006')
-#
-#         caller.process()
-#         self.assertEqual(caller.is_valid(), False)
-#         self.assertEqual(caller.errorcode, 'bad_identifier')
-- 
GitLab