pubs/tests/test_paper.py
Fabien Benureau d3736e257b moving from pybtex to bibtextparser, fixed major regressions.
* only bibtex format is supported
* all tests except test_repo.py and edit test pass
* edit and update commands were not updated
* removed --format argument from export, only bibtex is supported.
2014-04-13 15:10:40 +02:00

48 lines
1.6 KiB
Python

# -*- coding: utf-8 -*-
import os
import unittest
import dotdot
import fixtures
from pubs.paper import Paper
class TestAttributes(unittest.TestCase):
def test_tags(self):
p = Paper(fixtures.page_bibdata, metadata=fixtures.page_metadata).deepcopy()
self.assertEqual(p.tags, set(['search', 'network']))
def test_add_tag(self):
p = Paper(fixtures.page_bibdata, metadata=fixtures.page_metadata).deepcopy()
p.add_tag('algorithm')
self.assertEqual(p.tags, set(['search', 'network', 'algorithm']))
p.add_tag('algorithm')
self.assertEqual(p.tags, set(['search', 'network', 'algorithm']))
def test_set_tags(self):
p = Paper(fixtures.page_bibdata, metadata=fixtures.page_metadata).deepcopy()
p.tags = ['algorithm']
self.assertEqual(p.tags, set(['algorithm']))
def test_remove_tags(self):
p = Paper(fixtures.page_bibdata, metadata=fixtures.page_metadata).deepcopy()
p.remove_tag('network')
self.assertEqual(p.tags, set(['search']))
def test_mixed_tags(self):
p = Paper(fixtures.page_bibdata, metadata=fixtures.page_metadata).deepcopy()
p.add_tag('algorithm')
self.assertEqual(p.tags, set(['search', 'network', 'algorithm']))
p.remove_tag('network')
self.assertEqual(p.tags, set(['search', 'algorithm']))
p.tags = ['ranking']
self.assertEqual(p.tags, set(['ranking']))
p.remove_tag('ranking')
self.assertEqual(p.tags, set())
p.remove_tag('ranking')
if __name__ == '__main__':
unittest.main()