curds: Switch genre node over to the find_node() / alloc_node() interface
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
parent
aef622d39b
commit
7998a734e4
|
@ -8,13 +8,12 @@ class GenreNode(node.PlaylistNode):
|
|||
node.PlaylistNode.__init__(self, "Genres", "emblem-generic")
|
||||
notify.register("new-track", self.new_track)
|
||||
|
||||
def alloc_node(self, name):
|
||||
return playlist.Playlist(name, self.icon,
|
||||
[ "artist", "date", "album", "discnumber", "tracknumber" ])
|
||||
|
||||
def new_track(self, track):
|
||||
plist = self.lookup(track["genre"])
|
||||
if plist == None:
|
||||
sort = [ "artist", "date", "album", "discnumber", "tracknumber" ]
|
||||
plist = playlist.Playlist(track["genre"], self.icon, sort)
|
||||
self.insert_child(plist)
|
||||
plist.add(track)
|
||||
self.find_node(track["genre"]).add(track)
|
||||
|
||||
def reset(self):
|
||||
node.PlaylistNode.reset(self)
|
||||
|
|
|
@ -29,6 +29,14 @@ class TestGenrePlaylist(unittest.TestCase):
|
|||
plist = gnode.nth_child(0)
|
||||
self.assertEqual(plist.name, "Test Genre 1")
|
||||
self.assertEqual(plist.icon, "emblem-generic")
|
||||
self.assertEqual(plist[0], track)
|
||||
|
||||
def test_genre_alloc_node(self):
|
||||
gnode = genre.GenreNode()
|
||||
plist = gnode.alloc_node("Test Genre")
|
||||
self.assertIsInstance(plist, playlist.Playlist)
|
||||
self.assertEqual(plist.name, "Test Genre")
|
||||
self.assertEqual(plist.icon, "emblem-generic")
|
||||
self.assertEqual(plist.sort_order,
|
||||
[ "artist", "date", "album", "discnumber", "tracknumber" ])
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user