]> kaliko git repositories - mpd-sima.git/blobdiff - tests/test_simadb.py
Add Album property to Track objects
[mpd-sima.git] / tests / test_simadb.py
index 3be8758bf4448b17b6eca3ef8853761a9d4bbff3..c3e400deb00f7e35a57b6607be2c3b1020e8e39a 100644 (file)
@@ -4,7 +4,7 @@ import datetime
 import unittest
 import os
 
-from sima.lib.db import SimaDB
+from sima.lib.simadb import SimaDB
 from sima.lib.track import Track
 from sima.lib.meta import Album, Artist, MetaContainer
 
@@ -70,7 +70,7 @@ class Test_00DB(Main):
     def test_01_add_track(self):
         trk = Track(**DEVOLT)
         trk_id = self.db.get_track(trk)
-        self.assertEqual(trk_id, self.db.get_track(trk),
+        self.assertEqual(trk_id, self.db.get_track(trk, add=False),
                          'Same track, same record')
 
     def test_02_history(self):
@@ -248,6 +248,8 @@ class Test_00DB(Main):
 class Test_01BlockList(Main):
 
     def test_blocklist_addition(self):
+        trk = Track(file='/foo/bar/baz', name='title')
+        self.assertIs(self.db.get_bl_track(trk, add=False), None)
         tracks_ids = list()
         # Set 6 records, same album
         for i in range(1, 6):  # starts at 1 to ensure records are in the past
@@ -255,16 +257,16 @@ class Test_01BlockList(Main):
                         albumartist='fooalbart', album='foolbum',)
             # Add track, save its DB id
             tracks_ids.append(self.db.get_track(trk))
-            # set records in the past to ease purging then
-            last = CURRENT - datetime.timedelta(minutes=i)
-            self.db.add_history(trk, date=last)  # Add to history
             if i == 1:
                 self.db.get_bl_track(trk)
+                self.assertIsNot(self.db.get_bl_track(trk, add=False), None)
             if i == 2:
-                self.db.get_bl_track(trk)
                 self.db.get_bl_album(Album(name=trk.album))
             if i == 3:
                 self.db.get_bl_artist(trk.Artist)
+            if i == 4:
+                self.assertIs(self.db.get_bl_track(trk, add=False), None)
+
 
     def test_blocklist_triggers_00(self):
         trk01 = Track(file='01', name='01', artist='artist A', album='album A')
@@ -322,5 +324,16 @@ class Test_02Genre(Main):
         genre_hist = self.db.fetch_genres_history(limit=10)
         self.assertEqual([g[0] for g in genre_hist], genres[:10])
 
+    def test_null_genres(self):
+        conn = self.db.get_database_connection()
+        genres = list()
+        for i in range(1, 2):  # starts at 1 to ensure records are in the past
+            trk = Track(file=f'/foo/bar.{i}', name=f'{i}-baz',
+                        album='foolbum', artist=f'{i}-art')
+            last = CURRENT - datetime.timedelta(minutes=i)
+            self.db.add_history(trk, date=last)
+        genre_hist = self.db.fetch_genres_history(limit=10)
+        self.assertEqual(genre_hist, [])
+
 # VIM MODLINE
 # vim: ai ts=4 sw=4 sts=4 expandtab fileencoding=utf8