def test_descriptive_very_short_format(self): del (self.sample['title']) del (self.sample['short_title']) del (self.sample['lpage']) del (self.sample['fpage']) del (self.sample['elocation']) result = descriptive_very_short_format(**self.sample) self.assertEqual('2011, Volume: 67, Issue: 9 Supplement 3', result)
def get_journal_json_data(journal, language='pt'): """ Para cada journal, retorna uma estrutura mais resumida para ser enviada como json para o frontend. Exemplo: { "id": "e3ad10cca39a466da771c8abe6591a9f", "is_active": true, "issues_count": 64, "last_issue": { "legend": "LEGENDA BIBLIOGRAFICA DO ISSUE", "number": "123", "volume": 456, "year": 2016, "url_segment": "/foo" }, "links": { "about": "#", "contact": "#", "detail": "/journals/e3ad10cca39a466da771c8abe6591a9f", "instructions": "#", "submission": "#" }, "title": "Interface - Comunica\\u00e7\\u00e3o, Sa\\u00fade, Educa\\u00e7\\u00e3o" }, """ j_data = { 'id': journal.id, 'title': journal.title, 'links': { 'detail': url_for('main.journal_detail', url_seg=journal.url_segment), 'issue_grid': url_for('main.issue_grid', url_seg=journal.url_segment), 'submission': journal.online_submission_url or url_for('main.about_journal', url_seg=journal.url_segment) + '#submission', 'instructions': url_for('main.about_journal', url_seg=journal.url_segment) + '#instructions', 'about': url_for('main.about_journal', url_seg=journal.url_segment), 'contact': url_for('main.about_journal', url_seg=journal.url_segment) + '#contact', 'editors': url_for('main.about_journal', url_seg=journal.url_segment) + '#editors', }, 'is_active': journal.current_status == 'current', 'issues_count': journal.issue_count, 'next_title': journal.next_title, 'status_reason': str(JOURNAL_STATUS.get(journal.current_status, journal.current_status)) } if journal.last_issue: last_issue_legend = descriptive_very_short_format( pubdate=str(journal.last_issue.year), volume=journal.last_issue.volume, number=journal.last_issue.number, suppl=journal.last_issue.suppl_text, language=language) j_data['last_issue'] = { 'legend': last_issue_legend, 'volume': journal.last_issue.volume, 'number': journal.last_issue.number, 'year': journal.last_issue.year, # verificar uma forma mais legal de gerar essa URL o ideal é fazer isso com url_for 'url_segment': '%s/%s' % ('toc', journal.url_last_issue) } if journal.url_next_journal: j_data['url_next_journal'] = url_for('main.journal_detail', url_seg=journal.url_next_journal) return j_data