curds: Add a next() function to the PlaylistManager
I'll eventually make this more complex when I add in more playlists, but for now it just calls next on the Collection playlist Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
parent
57b642265c
commit
b642e762f7
|
@ -28,3 +28,9 @@ class PlaylistManager(dict):
|
|||
def __init__(self):
|
||||
self["Collection"] = collection.CollectionPlaylist()
|
||||
self["Library"] = LibraryManager()
|
||||
self.current = self["Collection"]
|
||||
self.track = None
|
||||
|
||||
def next(self):
|
||||
self.track = self.current.next()
|
||||
return self.track
|
||||
|
|
|
@ -31,6 +31,9 @@ class TestPlaylistManager(unittest.TestCase):
|
|||
self.assertIsInstance(playman["Library"], manager.LibraryManager)
|
||||
self.assertIsInstance(playman["Library"], list)
|
||||
|
||||
self.assertEqual(playman.current, playman["Collection"])
|
||||
self.assertEqual(playman.track, None)
|
||||
|
||||
def on_new_library(self, plist):
|
||||
self.cb_plist = plist
|
||||
|
||||
|
@ -73,3 +76,18 @@ class TestPlaylistManager(unittest.TestCase):
|
|||
self.assertEqual(len(plist), 1250)
|
||||
self.assertEqual(len(alist), 12)
|
||||
self.assertEqual(len(playman["Collection"]), len(alist) + len(plist))
|
||||
|
||||
def test_manager_next(self):
|
||||
playman = manager.PlaylistManager()
|
||||
self.assertIsNone(playman.next())
|
||||
self.assertIsNone(playman.track)
|
||||
|
||||
clist = playman["Collection"]
|
||||
plist = playman["Library"].add(test_library)
|
||||
library.library_thread.join()
|
||||
|
||||
track = playman.next()
|
||||
self.assertEqual(playman.track, track)
|
||||
self.assertEqual(clist.current, 0)
|
||||
self.assertEqual(track, clist[0])
|
||||
|
||||
|
|
Loading…
Reference in New Issue