summaryrefslogtreecommitdiff
path: root/service/test/test_tags.py
diff options
context:
space:
mode:
Diffstat (limited to 'service/test/test_tags.py')
-rw-r--r--service/test/test_tags.py37
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