]> rtime.felk.cvut.cz Git - hubacji1/coffee-getter.git/commitdiff
Add top mate drinkers UT
authorJiri Vlasak <hubacji1@fel.cvut.cz>
Wed, 20 Mar 2019 16:20:12 +0000 (17:20 +0100)
committerJiri Vlasak <hubacji1@fel.cvut.cz>
Thu, 21 Mar 2019 13:34:02 +0000 (14:34 +0100)
ut/test_db.py
ut/test_getter.py

index c1577f4e0bb1565cf377dc60244c89fd9d5378b7..6ea695210a4e89520600aa1df70ebbd9ee2f2447 100644 (file)
@@ -67,10 +67,8 @@ INSERT INTO coffees (id, flavor, time) VALUES
 ('1111', 'Club-Mate 0,5 l', datetime('now', 'localtime', '-85 second')),
 ('1111', 'Club-Mate 0,33 l', datetime('now', 'localtime', '-85 second')),
 ('2222', 'espresso lungo', datetime('now', 'localtime', '-99 seconds')),
-('2222', 'Club-Mate 0,5 l', datetime('now', 'localtime', '-99 seconds')),
 ('2222', 'Club-Mate 0,33 l', datetime('now', 'localtime', '-99 seconds')),
 ('2222', 'espresso lungo', datetime('now', 'localtime', '-95 second')),
-('2222', 'Club-Mate 0,5 l', datetime('now', 'localtime', '-95 second')),
 ('2222', 'Club-Mate 0,33 l', datetime('now', 'localtime', '-95 second'));
     """)
     con.close()
@@ -98,3 +96,61 @@ class CoffeeDb(TestCase):
 class FailCoffeeDb(TestCase):
     def test_db_path_not_set(self):
         self.assertRaises(FileNotSetError, Db)
+
+class TopMateDrinkers(TestCase):
+    def test_test_top_mate_drinkers(self):
+        create_test_db(TESTDB_FILENAME)
+        try:
+            db = Db(TESTDB_FILENAME)
+            top = db.getTopMateDrinkers()
+            self.assertEqual(
+                top,
+                [
+                    ("tester", 4*0.5 + 4*0.33),
+                    ("newer", 2*0.33)
+                ]
+            )
+        finally:
+            delete_test_db(TESTDB_FILENAME)
+
+    def test_test_top_mate_drinkers_len(self):
+        create_test_db(TESTDB_FILENAME)
+        try:
+            db = Db(TESTDB_FILENAME)
+            top = db.getTopMateDrinkers()
+            self.assertIsNotNone(top)
+            self.assertEqual(len(top), 2)
+        finally:
+            delete_test_db(TESTDB_FILENAME)
+
+    def test_top_mate_drinkers_len(self):
+        cfg = Conf()
+        db = Db(cfg.getCoffeeDbPath())
+        top = db.getTopMateDrinkers()
+        self.assertIsNotNone(top)
+        self.assertTrue(0 <= len(top))
+
+    def test_test_top_mate_drinkers_order(self):
+        create_test_db(TESTDB_FILENAME)
+        try:
+            db = Db(TESTDB_FILENAME)
+            top = db.getTopMateDrinkers()
+            topsorted = list(top)
+            topsorted.sort(key=lambda x: x[1], reverse=True)
+            self.assertEqual(
+                top,
+                topsorted
+            )
+        finally:
+            delete_test_db(TESTDB_FILENAME)
+
+    def test_top_mate_drinkers_order(self):
+        cfg = Conf()
+        db = Db(cfg.getCoffeeDbPath())
+        top = db.getTopMateDrinkers()
+        topsorted = list(top)
+        topsorted.sort(key=lambda x: x[1], reverse=True)
+        self.assertEqual(
+            top,
+            topsorted
+        )
index 68a746df04603677f32769a2f61ba1a3be2255f8..e59c4e99d02c1cd88ae1be7dad657fbe67eac28b 100644 (file)
@@ -10,6 +10,7 @@ class SuccessInit(TestCase):
         self.assertIsNotNone(g.cfg)
         self.assertIsNotNone(g.db)
         self.assertEqual(g.msg, "")
+        self.assertEqual(g.top, [])
 
     def test_msg_getter_is_blank_by_default(self):
         g = CoffeebotGetter()
@@ -19,3 +20,22 @@ class SuccessInit(TestCase):
         g = CoffeebotGetter()
         r = g.sendMsgToSlack()
         self.assertIsInstance(r, Response)
+
+class TopMateDrinkers(TestCase):
+    def test_top_mate_drinkers(self):
+        g = CoffeebotGetter()
+        g.loadTopMateDrinkers()
+        self.assertIsNotNone(g.top)
+        self.assertTrue(len(g.top) >= 0)
+        self.assertNotEqual(g.msg, "")
+        self.assertTrue(len(g.msg) >= 0)
+
+    def test_get_hero_comment(self):
+        g = CoffeebotGetter()
+        self.assertNotEqual(g.getHeroComment(), "")
+
+    def test_get_some_smile(self):
+        g = CoffeebotGetter()
+        self.assertNotEqual(g.getSomeSmile(), "")
+        self.assertEqual(g.getSomeSmile()[0], ":")
+        self.assertEqual(g.getSomeSmile()[-1], ":")