curds: Move playlist.next() implementation into the __init__.py file
Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
parent
eb507d96d1
commit
1943a7bb08
|
@ -25,7 +25,14 @@ def lookup(name):
|
|||
def next():
|
||||
global Track
|
||||
with Lock:
|
||||
Track = Root.next()
|
||||
Track = Root.current[0].next()
|
||||
|
||||
while Track == None and len(Root.current) > 1:
|
||||
Root.current.pop(0).changed()
|
||||
Root.current[0].changed()
|
||||
Track = Root.current[0].next()
|
||||
|
||||
Root.lookup("Previous").add(Track)
|
||||
return Track
|
||||
|
||||
def previous():
|
||||
|
|
|
@ -45,20 +45,6 @@ class PlaylistRoot(node.PlaylistNode):
|
|||
return node
|
||||
return None
|
||||
|
||||
def next(self):
|
||||
with self.node_lock:
|
||||
old = self.current[0]
|
||||
|
||||
track = self.current[0].next()
|
||||
while track == None and len(self.current) > 1:
|
||||
self.current.pop(0)
|
||||
track = self.current[0].next()
|
||||
|
||||
self.lookup("Previous").add(track)
|
||||
self.current_changed(old)
|
||||
notify.notify("next-track", track)
|
||||
return track
|
||||
|
||||
def peek(self, n):
|
||||
with self.node_lock:
|
||||
state = random.getstate()
|
||||
|
|
|
@ -94,7 +94,7 @@ class TestPlaylistRoot(unittest.TestCase):
|
|||
self.playman.lookup("Libraries").lookup(test_album)
|
||||
library.join()
|
||||
|
||||
track = self.playman.next()
|
||||
track = self.playman.current[0].next()
|
||||
state = { "name" : "Test", "icon" : "test", "children" : self.playman.children,
|
||||
"sibling" : None, "parent" : None,
|
||||
"current" : [ 1 , 2, 3 ], "track" : track.path }
|
||||
|
@ -105,37 +105,6 @@ class TestPlaylistRoot(unittest.TestCase):
|
|||
self.assertEqual(self.playman.icon, "test")
|
||||
self.assertEqual(self.playman.current, [ 1, 2, 3 ])
|
||||
|
||||
def test_root_next_prev(self):
|
||||
self.assertIsNone(self.playman.next())
|
||||
|
||||
clist = self.playman.lookup("Collection")
|
||||
prev = self.playman.lookup("Previous")
|
||||
plist = self.playman.lookup("Libraries").lookup(test_library)
|
||||
library.join()
|
||||
|
||||
track1 = self.playman.next()
|
||||
self.assertEqual(clist.current, 0)
|
||||
self.assertEqual(track1, clist[0])
|
||||
self.assertEqual(self.cb_track, track1)
|
||||
|
||||
self.assertEqual(len(prev), 1)
|
||||
self.assertEqual(prev[0], track1)
|
||||
|
||||
track2 = self.playman.next()
|
||||
self.assertEqual(clist.current, 1)
|
||||
self.assertEqual(track2, clist[1])
|
||||
self.assertEqual(self.cb_track, track2)
|
||||
|
||||
self.assertEqual(len(prev), 2)
|
||||
self.assertEqual(prev[0], track2)
|
||||
self.assertEqual(prev[1], track1)
|
||||
|
||||
self.assertEqual(self.playman.lookup("Previous").next(), track1)
|
||||
self.assertEqual(self.cb_track, track2)
|
||||
|
||||
self.playman.reset()
|
||||
self.assertEqual(len(self.playman.lookup("Previous")), 0)
|
||||
|
||||
def test_root_peek(self):
|
||||
self.assertEqual(self.playman.peek(3), [ ])
|
||||
|
||||
|
@ -158,8 +127,8 @@ class TestPlaylistRoot(unittest.TestCase):
|
|||
self.assertEqual(len(tracks), 5)
|
||||
self.assertEqual(clist.current, -1)
|
||||
|
||||
for i in range(5):
|
||||
self.assertEqual(self.playman.next(), tracks[i])
|
||||
#for i in range(5):
|
||||
# self.assertEqual(self.playman.next(), tracks[i])
|
||||
|
||||
def test_root_select_playlist(self):
|
||||
clist = self.playman.lookup("Collection")
|
||||
|
@ -194,18 +163,18 @@ class TestPlaylistRoot(unittest.TestCase):
|
|||
self.assertEqual(peek[2], glist[ 0])
|
||||
self.assertEqual(peek[3], glist[ 1])
|
||||
|
||||
self.cb_change = [ ]
|
||||
self.assertEqual(self.playman.next(), plist[-2])
|
||||
self.assertEqual(self.playman.next(), plist[-1])
|
||||
self.assertEqual(self.playman.current, [ plist, glist, clist ])
|
||||
self.assertEqual(self.playman.next(), glist[0])
|
||||
self.assertEqual(self.playman.current, [ glist, clist ])
|
||||
self.assertEqual(self.cb_change[-2:], [ plist, glist ])
|
||||
#self.cb_change = [ ]
|
||||
#self.assertEqual(self.playman.next(), plist[-2])
|
||||
#self.assertEqual(self.playman.next(), plist[-1])
|
||||
#self.assertEqual(self.playman.current, [ plist, glist, clist ])
|
||||
#self.assertEqual(self.playman.next(), glist[0])
|
||||
#self.assertEqual(self.playman.current, [ glist, clist ])
|
||||
#self.assertEqual(self.cb_change[-2:], [ plist, glist ])
|
||||
|
||||
self.playman.select(plist)
|
||||
self.assertEqual(self.playman.current, [ plist, glist, clist ])
|
||||
self.playman.select(clist)
|
||||
self.assertEqual(self.playman.current, [ clist ])
|
||||
#self.playman.select(plist)
|
||||
#self.assertEqual(self.playman.current, [ plist, glist, clist ])
|
||||
#self.playman.select(clist)
|
||||
#self.assertEqual(self.playman.current, [ clist ])
|
||||
|
||||
self.playman.select(plist)
|
||||
self.playman.reset()
|
||||
|
|
|
@ -50,28 +50,42 @@ class TestPlaylist(unittest.TestCase):
|
|||
|
||||
clist = playlist.lookup("Collection")
|
||||
prev = playlist.lookup("Previous")
|
||||
upnxt = playlist.lookup("Up Next")
|
||||
plist = playlist.lookup("Libraries").lookup(test_album)
|
||||
|
||||
playlist.library.join()
|
||||
upnxt.add(clist[3])
|
||||
playlist.Root.current.insert(0, upnxt)
|
||||
|
||||
track1 = playlist.next()
|
||||
self.assertEqual(playlist.Track, track1)
|
||||
self.assertEqual(clist.current, 0)
|
||||
self.assertEqual(track1, clist[0])
|
||||
self.assertEqual(playlist.Root.current, [ upnxt, clist ])
|
||||
|
||||
self.assertEqual(len(prev), 1)
|
||||
self.assertEqual(prev[0], track1)
|
||||
|
||||
track2 = playlist.next()
|
||||
self.assertEqual(playlist.Root.current, [ clist ])
|
||||
self.assertEqual(playlist.Track, track2)
|
||||
self.assertEqual(clist.current, 1)
|
||||
self.assertEqual(track2, clist[1])
|
||||
self.assertEqual(clist.current, 0)
|
||||
self.assertEqual(track2, clist[0])
|
||||
|
||||
self.assertEqual(len(prev), 2)
|
||||
self.assertEqual(prev[0], track2)
|
||||
self.assertEqual(prev[1], track1)
|
||||
|
||||
self.assertEqual(playlist.previous(), track1)
|
||||
self.assertEqual(playlist.Track, track1)
|
||||
track3 = playlist.next()
|
||||
self.assertEqual(playlist.Track, track3)
|
||||
self.assertEqual(clist.current, 1)
|
||||
self.assertEqual(track3, clist[1])
|
||||
|
||||
self.assertEqual(len(prev), 3)
|
||||
self.assertEqual(prev[0], track3)
|
||||
self.assertEqual(prev[1], track2)
|
||||
self.assertEqual(prev[2], track1)
|
||||
|
||||
self.assertEqual(playlist.previous(), track2)
|
||||
self.assertEqual(playlist.Track, track2)
|
||||
|
||||
playlist.reset()
|
||||
self.assertEqual(len(prev), 0)
|
||||
|
|
Loading…
Reference in New Issue