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
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):
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
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')
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