diff --git a/tests/test_paper.py b/tests/test_paper.py index 92e0723..9f5c3b3 100644 --- a/tests/test_paper.py +++ b/tests/test_paper.py @@ -10,7 +10,34 @@ from pubs.paper import Paper class TestAttributes(unittest.TestCase): def test_tags(self): - p = Paper(fixtures.page_bibdata, metadata=fixtures.page_metadata) + 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')