curds: Add the DecadeNode to the PlaylistManager

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
Anna Schumaker 2019-04-20 13:04:33 -04:00
parent a8a9dada49
commit de9c7b0745
3 changed files with 11 additions and 5 deletions

View File

@ -1,6 +1,7 @@
# Copyright 2019 (c) Anna Schumaker.
from . import artist
from . import collection
from . import decade
from . import genre
from . import library
from . import node
@ -16,6 +17,7 @@ class PlaylistManager(node.PlaylistNode):
self.append_child(previous.PreviousPlaylist())
self.append_child(artist.ArtistNode())
self.append_child(genre.GenreNode())
self.append_child(decade.DecadeNode())
self.append_child(library.LibraryNode())
self.current = [ self.lookup("Collection") ]

View File

@ -1,6 +1,7 @@
# Copyright 2019 (c) Anna Schumaker.
from . import artist
from . import collection
from . import decade
from . import genre
from . import library
from . import manager
@ -56,13 +57,15 @@ class TestPlaylistManager(unittest.TestCase):
self.assertIsInstance(self.playman.lookup("Previous"), previous.PreviousPlaylist)
self.assertIsInstance(self.playman.lookup("Artists"), artist.ArtistNode)
self.assertIsInstance(self.playman.lookup("Genres"), genre.GenreNode)
self.assertIsInstance(self.playman.lookup("Decades"), decade.DecadeNode)
self.assertIsInstance(self.playman.lookup("Libraries"), library.LibraryNode)
self.assertEqual(self.playman.nth_child(0), self.playman.lookup("Collection"))
self.assertEqual(self.playman.nth_child(1), self.playman.lookup("Previous"))
self.assertEqual(self.playman.nth_child(2), self.playman.lookup("Artists"))
self.assertEqual(self.playman.nth_child(3), self.playman.lookup("Genres"))
self.assertEqual(self.playman.nth_child(4), self.playman.lookup("Libraries"))
self.assertEqual(self.playman.nth_child(4), self.playman.lookup("Decades"))
self.assertEqual(self.playman.nth_child(5), self.playman.lookup("Libraries"))
self.assertEqual(self.playman.name, "Root")
self.assertEqual(self.playman.current, [ self.playman.lookup("Collection") ])

View File

@ -20,6 +20,7 @@ class TestManager(unittest.TestCase):
self.model = manager.ManagerModel()
self.artist = curds.PlaylistManager.lookup("Artists")
self.decade = curds.PlaylistManager.lookup("Decades")
self.genre = curds.PlaylistManager.lookup("Genres")
curds.Track.lookup(os.path.join(test_album1, "01 - Test Track 01.ogg"))
curds.Track.lookup(os.path.join(test_album2, "01 - Test Track 01.ogg"))
@ -106,7 +107,7 @@ class TestManager(unittest.TestCase):
for i, node in enumerate(plist_mgr.children):
iter.user_data = i + 1
child = self.model.iter_children(iter)
if node != self.artist and node != self.genre:
if node not in [ self.artist, self.decade, self.genre ]:
self.assertIsNone(child)
iter.user_data = plist_mgr.n_children()
self.assertIsNone(self.model.iter_children(iter))
@ -124,7 +125,7 @@ class TestManager(unittest.TestCase):
for i, node in enumerate(plist_mgr.children):
iter.user_data = i + 1
expected = node == self.artist or node == self.genre
expected = node in [ self.artist, self.decade, self.genre ]
self.assertEqual(self.model.iter_has_child(iter), expected)
iter.user_data = plist_mgr.n_children()
self.assertFalse(self.model.iter_has_child(iter))
@ -155,7 +156,7 @@ class TestManager(unittest.TestCase):
for i, node in enumerate(plist_mgr.children):
iter = self.model.iter_nth_child(None, i)
self.assertTreeIterEqual(iter, (i + 1, 0, 0))
if node != self.artist and node != self.genre:
if node not in [self.artist, self.decade, self.genre]:
self.assertIsNone(self.model.iter_nth_child(iter, 0))
self.assertIsNone(self.model.iter_nth_child(None, plist_mgr.n_children()))
@ -296,7 +297,7 @@ class TestManager(unittest.TestCase):
iter = filter.iter_nth_child(None, i)
text = str(node) if i != 0 else f"<b>{str(node)}</b>"
self.assertEqual(filter.get_value(iter, 1), text)
if node != self.artist and node != self.genre:
if node not in [ self.artist, self.decade, self.genre ]:
self.assertIsNone(filter.iter_nth_child(iter, 0))
else:
for i, cnode in enumerate(node.children):