Fixes editor formatting.

main
Olivier Mangin 11 years ago
parent 91b3fc75bb
commit 9b6f6db297

@ -71,6 +71,8 @@ class EnDecoder(object):
return ', '.join(link['url'] for link in value)
elif key == 'author':
return ' and '.join(author for author in value)
elif key == 'editor':
return ' and '.join(editor['name'] for editor in value)
elif key == 'journal':
return value['name']
else:

@ -40,6 +40,7 @@ turing_bib = """@article{turing1950computing,
title={Computing machinery and intelligence},
author={Turing, Alan M},
journal={Mind},
editor={Edward A. Feigenbaum and Julian Feldman},
volume={59},
number={236},
pages={433--460},

@ -6,7 +6,7 @@ import yaml
import dotdot
from pubs import endecoder
from str_fixtures import bibtex_raw0, metadata_raw0
from str_fixtures import bibtex_raw0, metadata_raw0, turing_bib
def compare_yaml_str(s1, s2):
if s1 == s2:
@ -37,6 +37,23 @@ class TestEnDecode(unittest.TestCase):
self.assertEqual(bibraw1, bibraw2)
def test_endecode_bibtex_editor(self):
decoder = endecoder.EnDecoder()
entry = decoder.decode_bibdata(turing_bib)
bibraw1 = decoder.encode_bibdata(entry)
entry1 = decoder.decode_bibdata(bibraw1)
bibraw2 = decoder.encode_bibdata(entry1)
entry2 = decoder.decode_bibdata(bibraw2)
for citekey in entry1.keys():
bibentry1 = entry1[citekey]
bibentry2 = entry2[citekey]
for key, value in bibentry1.items():
self.assertEqual(bibentry1[key], bibentry2[key])
self.assertEqual(bibraw1, bibraw2)
def test_endecode_metadata(self):
decoder = endecoder.EnDecoder()

Loading…
Cancel
Save