diff options
Diffstat (limited to 'service/test')
-rw-r--r-- | service/test/test_tags.py | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/service/test/test_tags.py b/service/test/test_tags.py new file mode 100644 index 00000000..5e0ea426 --- /dev/null +++ b/service/test/test_tags.py @@ -0,0 +1,37 @@ +import unittest +from app.tags import Tags, Tag + + +class TagTestCase(unittest.TestCase): + + def test_create_tag(self): + tag = Tag('test') + self.assertEqual(tag.name, 'test') + +class TagsTestCase(unittest.TestCase): + + def test_add_tag_to_collection(self): + tag_collection = Tags() + tag_collection.add('test') + self.assertEqual(len(tag_collection), len(Tags())+1) + tag_collection.add('test2') + self.assertEqual(len(tag_collection), len(Tags())+2) + + def test_no_tag_duplication(self): + tag_collection = Tags() + tag_collection.add('test') + self.assertEqual(len(tag_collection), len(Tags())+1) + tag_collection.add('test') + self.assertEqual(len(tag_collection), len(Tags())+1) + + def test_find_tag_on_collection(self): + tag_collection = Tags() + tag_collection.add('test') + tag_collection.add('test2') + self.assertEqual(tag_collection.find('test'), Tag('test')) + + def test_special_tags_always_exist(self): + special_tags = ['inbox', 'sent', 'drafts', 'trash'] + tag_collection = Tags() + for tag in special_tags: + self.assertIn(Tag(tag), tag_collection)
\ No newline at end of file |