curds: Rename PlaylistManager -> PlaylistRoot
This is the root node of the Playlist Tree, so give it a name reflecting that. Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
parent
b9ad790abf
commit
8f6be9b6f5
|
@ -15,7 +15,7 @@ Track = tags.Track
|
|||
def reset():
|
||||
notify.queued.clear()
|
||||
tags.tag_map.clear()
|
||||
playlist.Manager.reset()
|
||||
playlist.Root.reset()
|
||||
playlist.library.reset()
|
||||
|
||||
def stop():
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
# Copyright 2019 (c) Anna Schumaker.
|
||||
from . import library
|
||||
from . import playlist
|
||||
from . import manager
|
||||
from . import root
|
||||
|
||||
Library = library.LibraryPlaylist
|
||||
Node = node.PlaylistNode
|
||||
Manager = manager.Manager
|
||||
Root = root.Root
|
||||
|
|
|
@ -9,7 +9,7 @@ from . import previous
|
|||
import random
|
||||
|
||||
|
||||
class PlaylistManager(node.PlaylistNode):
|
||||
class PlaylistRoot(node.PlaylistNode):
|
||||
def __init__(self):
|
||||
node.PlaylistNode.__init__(self, "root")
|
||||
|
||||
|
@ -78,4 +78,4 @@ class PlaylistManager(node.PlaylistNode):
|
|||
self.current_changed(old)
|
||||
|
||||
|
||||
Manager = PlaylistManager()
|
||||
Root = PlaylistRoot()
|
|
@ -4,10 +4,10 @@ from . import collection
|
|||
from . import decade
|
||||
from . import genre
|
||||
from . import library
|
||||
from . import manager
|
||||
from . import node
|
||||
from . import playlist
|
||||
from . import previous
|
||||
from . import root
|
||||
from .. import notify
|
||||
from .. import tags
|
||||
from .. import threadqueue
|
||||
|
@ -18,7 +18,7 @@ import unittest
|
|||
test_album = os.path.abspath("./trier/Test Album")
|
||||
test_library = os.path.abspath("./trier/Test Library")
|
||||
|
||||
class TestPlaylistManager(unittest.TestCase):
|
||||
class TestPlaylistRoot(unittest.TestCase):
|
||||
def setUp(self):
|
||||
tags.clear()
|
||||
library.reset()
|
||||
|
@ -28,7 +28,7 @@ class TestPlaylistManager(unittest.TestCase):
|
|||
try:
|
||||
self.playman.reset()
|
||||
except:
|
||||
self.playman = manager.PlaylistManager()
|
||||
self.playman = root.PlaylistRoot()
|
||||
self.cb_plist = None
|
||||
self.cb_index = None
|
||||
self.cb_first = None
|
||||
|
@ -49,8 +49,8 @@ class TestPlaylistManager(unittest.TestCase):
|
|||
def on_playlist_changed(self, plist):
|
||||
self.cb_change.append(plist)
|
||||
|
||||
def test_manager_init(self):
|
||||
self.assertIsInstance(self.playman, manager.PlaylistManager)
|
||||
def test_root_init(self):
|
||||
self.assertIsInstance(self.playman, root.PlaylistRoot)
|
||||
self.assertIsInstance(self.playman, node.PlaylistNode)
|
||||
|
||||
self.assertIsInstance(self.playman.lookup("Collection"), collection.CollectionPlaylist)
|
||||
|
@ -74,7 +74,7 @@ class TestPlaylistManager(unittest.TestCase):
|
|||
self.assertEqual(self.playman.current, [ self.playman.lookup("Collection") ])
|
||||
self.assertEqual(self.playman.track, None)
|
||||
|
||||
def test_manager_on_scan(self):
|
||||
def test_root_on_scan(self):
|
||||
plist = self.playman.lookup("Libraries").lookup(test_library)
|
||||
alist = self.playman.lookup("Libraries").lookup(test_album)
|
||||
library.join()
|
||||
|
@ -86,7 +86,7 @@ class TestPlaylistManager(unittest.TestCase):
|
|||
self.playman.reset()
|
||||
self.assertEqual(len(self.playman.lookup("Collection")), 0)
|
||||
|
||||
def test_manager_next_prev(self):
|
||||
def test_root_next_prev(self):
|
||||
self.assertIsNone(self.playman.next())
|
||||
self.assertIsNone(self.playman.track)
|
||||
|
||||
|
@ -118,7 +118,7 @@ class TestPlaylistManager(unittest.TestCase):
|
|||
self.assertEqual(len(self.playman.lookup("Previous")), 0)
|
||||
self.assertIsNone(self.playman.track)
|
||||
|
||||
def test_manager_peek(self):
|
||||
def test_root_peek(self):
|
||||
self.assertEqual(self.playman.peek(3), [ ])
|
||||
|
||||
clist = self.playman.lookup("Collection")
|
||||
|
@ -143,7 +143,7 @@ class TestPlaylistManager(unittest.TestCase):
|
|||
for i in range(5):
|
||||
self.assertEqual(self.playman.next(), tracks[i])
|
||||
|
||||
def test_manager_select_playlist(self):
|
||||
def test_root_select_playlist(self):
|
||||
clist = self.playman.lookup("Collection")
|
||||
plist = self.playman.lookup("Libraries").lookup(test_library)
|
||||
library.join()
|
14
rind/gst.py
14
rind/gst.py
|
@ -56,7 +56,7 @@ class EmmentalAudio:
|
|||
|
||||
def about_to_finish(self, playbin):
|
||||
if self.pause_count != 0 and self.have_next == False:
|
||||
track = curds.playlist.Manager.next()
|
||||
track = curds.playlist.Root.next()
|
||||
if track:
|
||||
self.playbin.set_property("uri", f"file://{track.path}")
|
||||
self.pause_dec()
|
||||
|
@ -92,9 +92,9 @@ class EmmentalAudio:
|
|||
|
||||
def next(self, *args):
|
||||
if self.have_next == False:
|
||||
self.load(curds.playlist.Manager.next())
|
||||
self.load(curds.playlist.Root.next())
|
||||
else:
|
||||
self.load(curds.playlist.Manager.track)
|
||||
self.load(curds.playlist.Root.track)
|
||||
|
||||
def on_key_press(self, widget, event):
|
||||
key = Gdk.keyval_name(event.keyval)
|
||||
|
@ -111,7 +111,7 @@ class EmmentalAudio:
|
|||
self.state_changed(message.src, state[1])
|
||||
elif message.type == Gst.MessageType.EOS:
|
||||
state = Gst.State.PAUSED if self.pause_dec() else Gst.State.PLAYING
|
||||
self.load(curds.playlist.Manager.next(), state)
|
||||
self.load(curds.playlist.Root.next(), state)
|
||||
curds.notify.notify("eos")
|
||||
elif message.type == Gst.MessageType.STATE_CHANGED:
|
||||
(old, new, pending) = message.parse_state_changed()
|
||||
|
@ -192,8 +192,8 @@ class EmmentalAudio:
|
|||
return GLib.SOURCE_REMOVE
|
||||
|
||||
def pause_time(self):
|
||||
tracks = curds.playlist.Manager.peek(self.pause_count)
|
||||
tracks.append(curds.playlist.Manager.track)
|
||||
tracks = curds.playlist.Root.peek(self.pause_count)
|
||||
tracks.append(curds.playlist.Root.track)
|
||||
length = [ t.length for t in tracks if t is not None ]
|
||||
(m, s) = divmod(sum(length) - self.position(), 60)
|
||||
if s >= 30:
|
||||
|
@ -210,7 +210,7 @@ class EmmentalAudio:
|
|||
return cur / Gst.SECOND if res == True else 0
|
||||
|
||||
def previous(self, *args):
|
||||
self.load(curds.playlist.Manager.previous())
|
||||
self.load(curds.playlist.Root.previous())
|
||||
|
||||
def progress(self):
|
||||
pos = self.position()
|
||||
|
|
|
@ -52,7 +52,7 @@ class ManagerModel(GObject.GObject, Gtk.TreeModel):
|
|||
def do_get_playlist_value(self, plist, column):
|
||||
if column == 1:
|
||||
text = GLib.markup_escape_text(str(plist))
|
||||
if plist == curds.playlist.Manager.current[0]:
|
||||
if plist == curds.playlist.Root.current[0]:
|
||||
return f"<b>{text}</b>"
|
||||
return text
|
||||
elif column == 2:
|
||||
|
@ -105,12 +105,12 @@ class ManagerModel(GObject.GObject, Gtk.TreeModel):
|
|||
def iter_playlist(self, iter):
|
||||
if iter and iter.user_data > 0:
|
||||
path = self.get_path(iter)
|
||||
return curds.playlist.Manager.get_node(path.get_indices())
|
||||
return curds.playlist.Manager
|
||||
return curds.playlist.Root.get_node(path.get_indices())
|
||||
return curds.playlist.Root
|
||||
|
||||
def iter_valid(self, iter):
|
||||
plist = self.iter_playlist(iter)
|
||||
valid = plist != None and plist != curds.playlist.Manager
|
||||
valid = plist != None and plist != curds.playlist.Root
|
||||
return (True, iter) if valid else (False, None)
|
||||
|
||||
def on_playlist_changed(self, plist):
|
||||
|
@ -129,9 +129,9 @@ class ManagerModel(GObject.GObject, Gtk.TreeModel):
|
|||
|
||||
def on_row_activated(self, treeview, path, column):
|
||||
child = self.filter.convert_path_to_child_path(path)
|
||||
plist = curds.playlist.Manager.get_node(child)
|
||||
plist = curds.playlist.Root.get_node(child)
|
||||
if isinstance(plist, curds.Playlist):
|
||||
curds.playlist.Manager.select(plist)
|
||||
curds.playlist.Root.select(plist)
|
||||
|
||||
def on_selection_changed(self, selection):
|
||||
(model, rows) = selection.get_selected_rows()
|
||||
|
@ -174,7 +174,7 @@ def library_cancel_clicked(self, *args):
|
|||
def library_ok_clicked(self, *args):
|
||||
path = LibraryChooser.get_filename()
|
||||
LibraryPopover.popdown()
|
||||
curds.playlist.Manager.lookup("Libraries").lookup(path)
|
||||
curds.playlist.Root.lookup("Libraries").lookup(path)
|
||||
|
||||
|
||||
LibraryAdd = gtk.Builder.get_object("library_add")
|
||||
|
|
|
@ -12,7 +12,7 @@ cols = [ "tracknumber", "title", "length", "artist", "album", "date", "genre" ]
|
|||
class PlaylistModel(GObject.GObject, Gtk.TreeModel):
|
||||
def __init__(self, *args, **kwargs):
|
||||
GObject.GObject.__init__(self)
|
||||
self.set_playlist(curds.playlist.Manager.lookup("Collection"))
|
||||
self.set_playlist(curds.playlist.Root.lookup("Collection"))
|
||||
curds.notify.register("add-track", self.on_add_track, queue=True)
|
||||
curds.notify.register("playlist-changed", self.on_playlist_changed, queue=True)
|
||||
RandomButton.connect("toggled", self.on_random_toggled)
|
||||
|
|
|
@ -148,31 +148,31 @@ class TestGst(unittest.TestCase):
|
|||
|
||||
def test_gst_controls(self):
|
||||
gst.NextButton.clicked()
|
||||
self.assertIsNone(curds.playlist.Manager.track)
|
||||
self.assertIsNone(curds.playlist.Root.track)
|
||||
gst.PrevButton.clicked()
|
||||
self.assertIsNone(curds.playlist.Manager.track)
|
||||
self.assertIsNone(curds.playlist.Root.track)
|
||||
|
||||
curds.playlist.Manager.lookup("Libraries").lookup(test_album)
|
||||
curds.playlist.Root.lookup("Libraries").lookup(test_album)
|
||||
curds.playlist.library.join()
|
||||
self.assertEqual(curds.playlist.Manager.lookup("Collection").current, -1)
|
||||
self.assertEqual(curds.playlist.Root.lookup("Collection").current, -1)
|
||||
|
||||
self.assertEqual(gst.PauseEntry.get_text(), "Paused")
|
||||
self.assertEqual(gst.PauseEntry.get_icon_name(gst.PauseIcon), "media-playback-pause")
|
||||
|
||||
gst.NextButton.clicked()
|
||||
track1 = curds.playlist.Manager.track
|
||||
track1 = curds.playlist.Root.track
|
||||
self.assertIsNotNone(track1)
|
||||
self.assertEqual(curds.playlist.Manager.lookup("Collection").current, 0)
|
||||
self.assertEqual(curds.playlist.Root.lookup("Collection").current, 0)
|
||||
|
||||
gst.NextButton.clicked()
|
||||
self.assertNotEqual(track1, curds.playlist.Manager.track)
|
||||
track2 = curds.playlist.Manager.track
|
||||
self.assertEqual(curds.playlist.Manager.lookup("Collection").current, 1)
|
||||
self.assertNotEqual(track1, curds.playlist.Root.track)
|
||||
track2 = curds.playlist.Root.track
|
||||
self.assertEqual(curds.playlist.Root.lookup("Collection").current, 1)
|
||||
|
||||
self.main_loop_until(Gst.State.PLAYING)
|
||||
self.assertTrue( gst.PauseButton.is_visible())
|
||||
self.assertFalse(gst.PlayButton.is_visible())
|
||||
self.assertEqual(curds.playlist.Manager.track, track2)
|
||||
self.assertEqual(curds.playlist.Root.track, track2)
|
||||
self.assertEqual(gst.PauseEntry.get_text(), "Keep Playing")
|
||||
self.assertEqual(gst.PauseEntry.get_icon_name(gst.PauseIcon), "media-playback-start")
|
||||
|
||||
|
@ -180,7 +180,7 @@ class TestGst(unittest.TestCase):
|
|||
self.main_loop_until(Gst.State.PAUSED)
|
||||
self.assertFalse(gst.PauseButton.is_visible())
|
||||
self.assertTrue( gst.PlayButton.is_visible())
|
||||
self.assertEqual(curds.playlist.Manager.track, track2)
|
||||
self.assertEqual(curds.playlist.Root.track, track2)
|
||||
self.assertEqual(gst.PauseEntry.get_text(), "Paused")
|
||||
self.assertEqual(gst.PauseEntry.get_icon_name(gst.PauseIcon), "media-playback-pause")
|
||||
|
||||
|
@ -193,26 +193,26 @@ class TestGst(unittest.TestCase):
|
|||
|
||||
gst.NextButton.clicked()
|
||||
self.main_loop_until(Gst.State.PLAYING)
|
||||
self.assertNotEqual(curds.playlist.Manager.track, track2)
|
||||
track3 = curds.playlist.Manager.track
|
||||
self.assertEqual(curds.playlist.Manager.lookup("Collection").current, 2)
|
||||
self.assertNotEqual(curds.playlist.Root.track, track2)
|
||||
track3 = curds.playlist.Root.track
|
||||
self.assertEqual(curds.playlist.Root.lookup("Collection").current, 2)
|
||||
|
||||
gst.PrevButton.clicked()
|
||||
self.main_loop_until(Gst.State.PLAYING, next=True)
|
||||
self.assertEqual(curds.playlist.Manager.track, track2)
|
||||
self.assertEqual(curds.playlist.Manager.lookup("Collection").current, 2)
|
||||
self.assertEqual(curds.playlist.Manager.lookup("Previous").current, 1)
|
||||
self.assertEqual(curds.playlist.Root.track, track2)
|
||||
self.assertEqual(curds.playlist.Root.lookup("Collection").current, 2)
|
||||
self.assertEqual(curds.playlist.Root.lookup("Previous").current, 1)
|
||||
|
||||
self.main_loop_until(Gst.State.PLAYING, next=True)
|
||||
self.assertEqual(curds.playlist.Manager.lookup("Collection").current, 3)
|
||||
self.assertNotEqual(curds.playlist.Manager.track, track2)
|
||||
self.assertEqual(curds.playlist.Root.lookup("Collection").current, 3)
|
||||
self.assertNotEqual(curds.playlist.Root.track, track2)
|
||||
|
||||
def sort_key(self, track):
|
||||
return track.tracknumber
|
||||
|
||||
def test_gst_automatic_pause_up(self):
|
||||
plist = curds.playlist.Manager.lookup("Collection")
|
||||
curds.playlist.Manager.lookup("Libraries").lookup(test_album)
|
||||
plist = curds.playlist.Root.lookup("Collection")
|
||||
curds.playlist.Root.lookup("Libraries").lookup(test_album)
|
||||
curds.playlist.library.join()
|
||||
plist.list.sort(key=self.sort_key)
|
||||
|
||||
|
@ -261,8 +261,8 @@ class TestGst(unittest.TestCase):
|
|||
self.audio.pause_popdown()
|
||||
|
||||
def test_gst_automatic_pause_down(self):
|
||||
plist = curds.playlist.Manager.lookup("Collection")
|
||||
curds.playlist.Manager.lookup("Libraries").lookup(test_album)
|
||||
plist = curds.playlist.Root.lookup("Collection")
|
||||
curds.playlist.Root.lookup("Libraries").lookup(test_album)
|
||||
curds.playlist.library.join()
|
||||
plist.list.sort(key=self.sort_key)
|
||||
|
||||
|
@ -309,8 +309,8 @@ class TestGst(unittest.TestCase):
|
|||
self.assertEqual(gst.PauseLabel.get_text(), self.audio.pause_time())
|
||||
|
||||
def test_gst_automatic_pause_entry(self):
|
||||
plist = curds.playlist.Manager.lookup("Collection")
|
||||
curds.playlist.Manager.lookup("Libraries").lookup(test_album)
|
||||
plist = curds.playlist.Root.lookup("Collection")
|
||||
curds.playlist.Root.lookup("Libraries").lookup(test_album)
|
||||
curds.playlist.library.join()
|
||||
|
||||
gst.PauseEntry.set_text("3")
|
||||
|
@ -338,42 +338,42 @@ class TestGst(unittest.TestCase):
|
|||
self.assertEqual(self.audio.pause_time(), "About 0 seconds")
|
||||
|
||||
def test_gst_about_to_finish(self):
|
||||
plist = curds.playlist.Manager.lookup("Collection")
|
||||
curds.playlist.Manager.lookup("Libraries").lookup(test_album)
|
||||
plist = curds.playlist.Root.lookup("Collection")
|
||||
curds.playlist.Root.lookup("Libraries").lookup(test_album)
|
||||
curds.playlist.library.join()
|
||||
|
||||
self.audio.next()
|
||||
self.assertFalse(self.audio.have_next)
|
||||
self.assertEqual(curds.playlist.Manager.track, plist[0])
|
||||
self.assertEqual(curds.playlist.Root.track, plist[0])
|
||||
|
||||
self.audio.pause_count = 2
|
||||
self.audio.about_to_finish(self.audio.playbin)
|
||||
self.assertEqual(curds.playlist.Manager.track, plist[1])
|
||||
self.assertEqual(curds.playlist.Root.track, plist[1])
|
||||
self.assertTrue(self.audio.have_next)
|
||||
self.assertEqual(self.audio.pause_count, 1)
|
||||
|
||||
self.audio.about_to_finish(self.audio.playbin)
|
||||
self.assertEqual(curds.playlist.Manager.track, plist[1])
|
||||
self.assertEqual(curds.playlist.Root.track, plist[1])
|
||||
self.assertTrue(self.audio.have_next)
|
||||
self.assertEqual(self.audio.pause_count, 1)
|
||||
|
||||
self.main_loop_until(Gst.State.PLAYING, next=True)
|
||||
self.assertFalse(self.audio.have_next)
|
||||
self.assertEqual(curds.playlist.Manager.track, plist[1])
|
||||
self.assertEqual(curds.playlist.Root.track, plist[1])
|
||||
|
||||
self.audio.about_to_finish(self.audio.playbin)
|
||||
self.assertEqual(curds.playlist.Manager.track, plist[2])
|
||||
self.assertEqual(curds.playlist.Root.track, plist[2])
|
||||
self.assertTrue(self.audio.have_next)
|
||||
self.assertEqual(self.audio.pause_count, 0)
|
||||
|
||||
self.audio.next()
|
||||
self.main_loop_until(Gst.State.PLAYING)
|
||||
self.assertEqual(curds.playlist.Manager.track, plist[2])
|
||||
self.assertEqual(curds.playlist.Root.track, plist[2])
|
||||
self.assertFalse(self.audio.have_next)
|
||||
self.assertEqual(self.audio.pause_count, 0)
|
||||
|
||||
self.audio.about_to_finish(self.audio.playbin)
|
||||
self.assertEqual(curds.playlist.Manager.track, plist[2])
|
||||
self.assertEqual(curds.playlist.Root.track, plist[2])
|
||||
self.assertFalse(self.audio.have_next)
|
||||
self.assertEqual(self.audio.pause_count, 0)
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ import time
|
|||
import unittest
|
||||
from gi.repository import Gtk, GObject, GLib
|
||||
|
||||
plist_mgr = curds.playlist.Manager
|
||||
plist_root = curds.playlist.Root
|
||||
test_album1 = os.path.abspath("./trier/Test Library/Test Artist 02/Test Album 1")
|
||||
test_album2 = os.path.abspath("./trier/Test Library/Test Artist 02/Test Album 2")
|
||||
|
||||
|
@ -19,9 +19,9 @@ class TestManager(unittest.TestCase):
|
|||
curds.notify.register("node-inserted", manager.MgrModel.on_node_inserted)
|
||||
|
||||
self.model = manager.ManagerModel()
|
||||
self.artist = curds.playlist.Manager.lookup("Artists")
|
||||
self.decade = curds.playlist.Manager.lookup("Decades")
|
||||
self.genre = curds.playlist.Manager.lookup("Genres")
|
||||
self.artist = curds.playlist.Root.lookup("Artists")
|
||||
self.decade = curds.playlist.Root.lookup("Decades")
|
||||
self.genre = curds.playlist.Root.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"))
|
||||
|
||||
|
@ -57,12 +57,12 @@ class TestManager(unittest.TestCase):
|
|||
self.assertEqual(self.model.get_column_type(2), GObject.GType(int))
|
||||
|
||||
def test_model_get_iter(self):
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
path = Gtk.TreePath.new_from_indices([ i ])
|
||||
iter = self.model.get_iter(path)
|
||||
self.assertTreeIterEqual(iter, (i + 1, 0, 0))
|
||||
|
||||
path = Gtk.TreePath.new_from_indices([ plist_mgr.n_children() ])
|
||||
path = Gtk.TreePath.new_from_indices([ plist_root.n_children() ])
|
||||
self.assertRaises(ValueError, self.model.get_iter, path)
|
||||
|
||||
index = self.genre.node_index()
|
||||
|
@ -74,7 +74,7 @@ class TestManager(unittest.TestCase):
|
|||
def test_model_get_path(self):
|
||||
iter = Gtk.TreeIter()
|
||||
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
iter.user_data = i + 1
|
||||
path = self.model.get_path(iter)
|
||||
self.assertEqual(path.get_indices(), [ i ])
|
||||
|
@ -90,7 +90,7 @@ class TestManager(unittest.TestCase):
|
|||
rect = manager.Treeview.get_cell_area(Gtk.TreePath(0), col)
|
||||
iter = Gtk.TreeIter()
|
||||
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
text = str(node) if i != 0 else f"<b>{str(node)}</b>"
|
||||
iter.user_data = i + 1
|
||||
self.assertEqual(self.model.get_value(iter, 0), node.icon)
|
||||
|
@ -104,12 +104,12 @@ class TestManager(unittest.TestCase):
|
|||
iter = self.model.iter_children(None)
|
||||
self.assertTreeIterEqual(iter, (1, 0, 0))
|
||||
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
iter.user_data = i + 1
|
||||
child = self.model.iter_children(iter)
|
||||
if node not in [ self.artist, self.decade, self.genre ]:
|
||||
self.assertIsNone(child)
|
||||
iter.user_data = plist_mgr.n_children()
|
||||
iter.user_data = plist_root.n_children()
|
||||
self.assertIsNone(self.model.iter_children(iter))
|
||||
|
||||
iter = self.model.playlist_iter(self.genre)
|
||||
|
@ -123,11 +123,11 @@ class TestManager(unittest.TestCase):
|
|||
def test_model_iter_has_child(self):
|
||||
iter = Gtk.TreeIter()
|
||||
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
iter.user_data = i + 1
|
||||
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()
|
||||
iter.user_data = plist_root.n_children()
|
||||
self.assertFalse(self.model.iter_has_child(iter))
|
||||
|
||||
iter = self.model.playlist_iter(self.genre)
|
||||
|
@ -139,12 +139,12 @@ class TestManager(unittest.TestCase):
|
|||
|
||||
def test_model_iter_n_children(self):
|
||||
iter = Gtk.TreeIter()
|
||||
self.assertEqual(self.model.iter_n_children(None), plist_mgr.n_children())
|
||||
self.assertEqual(self.model.iter_n_children(None), plist_root.n_children())
|
||||
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
iter.user_data = i + 1
|
||||
self.assertEqual(self.model.iter_n_children(iter), node.n_children())
|
||||
iter.user_data = plist_mgr.n_children()
|
||||
iter.user_data = plist_root.n_children()
|
||||
self.assertEqual(self.model.iter_n_children(iter), 0)
|
||||
|
||||
iter = self.model.playlist_iter(self.genre)
|
||||
|
@ -153,12 +153,12 @@ class TestManager(unittest.TestCase):
|
|||
self.assertEqual(self.model.iter_n_children(iter), 0)
|
||||
|
||||
def test_model_iter_nth_child(self):
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
iter = self.model.iter_nth_child(None, i)
|
||||
self.assertTreeIterEqual(iter, (i + 1, 0, 0))
|
||||
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()))
|
||||
self.assertIsNone(self.model.iter_nth_child(None, plist_root.n_children()))
|
||||
|
||||
iter = self.model.playlist_iter(self.genre)
|
||||
for i, node in enumerate(self.genre.children):
|
||||
|
@ -168,7 +168,7 @@ class TestManager(unittest.TestCase):
|
|||
|
||||
def test_model_iter_next(self):
|
||||
iter = self.model.iter_children(None)
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
self.assertTreeIterEqual(iter, (i + 1, 0, 0))
|
||||
iter = self.model.iter_next(iter)
|
||||
self.assertIsNone(iter)
|
||||
|
@ -182,7 +182,7 @@ class TestManager(unittest.TestCase):
|
|||
|
||||
def test_model_iter_parent(self):
|
||||
iter = self.model.iter_children(None)
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
self.assertIsNone(self.model.iter_parent(iter))
|
||||
iter = self.model.iter_next(iter)
|
||||
|
||||
|
@ -196,17 +196,17 @@ class TestManager(unittest.TestCase):
|
|||
def test_model_iter_playlist(self):
|
||||
iter = Gtk.TreeIter()
|
||||
|
||||
self.assertEqual(self.model.iter_playlist(None), plist_mgr)
|
||||
self.assertEqual(self.model.iter_playlist(iter), plist_mgr)
|
||||
self.assertEqual(self.model.iter_playlist(None), plist_root)
|
||||
self.assertEqual(self.model.iter_playlist(iter), plist_root)
|
||||
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
iter.user_data = i + 1
|
||||
self.assertEqual(self.model.iter_playlist(iter), node)
|
||||
iter.user_data = plist_mgr.n_children() + 1
|
||||
iter.user_data = plist_root.n_children() + 1
|
||||
self.assertIsNone(self.model.iter_playlist(iter))
|
||||
|
||||
iter.user_data2 = 1
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
iter.user_data = i + 1
|
||||
self.assertEqual(self.model.iter_playlist(iter), node.nth_child(0))
|
||||
|
||||
|
@ -220,16 +220,16 @@ class TestManager(unittest.TestCase):
|
|||
iter = Gtk.TreeIter()
|
||||
self.assertEqual(self.model.iter_valid(iter), (False, None))
|
||||
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
iter.user_data = i + 1
|
||||
self.assertEqual(self.model.iter_valid(iter), (True, iter))
|
||||
iter.user_data = plist_mgr.n_children() + 1
|
||||
iter.user_data = plist_root.n_children() + 1
|
||||
self.assertEqual(self.model.iter_valid(iter), (False, None))
|
||||
|
||||
def test_model_playlist_iter(self):
|
||||
self.assertIsNone(self.model.playlist_iter(None))
|
||||
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
iter = self.model.playlist_iter(node)
|
||||
self.assertTreeIterEqual(iter, (i + 1, 0, 0))
|
||||
|
||||
|
@ -241,7 +241,7 @@ class TestManager(unittest.TestCase):
|
|||
def test_model_playlist_valid_iter(self):
|
||||
self.assertEqual(self.model.playlist_valid_iter(None), (False, None))
|
||||
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
(valid, iter) = self.model.playlist_valid_iter(node)
|
||||
self.assertTrue(valid)
|
||||
self.assertTreeIterEqual(iter, (i + 1, 0, 0))
|
||||
|
@ -256,7 +256,7 @@ class TestManager(unittest.TestCase):
|
|||
selection = manager.Treeview.get_selection()
|
||||
self.assertIsInstance(selection, Gtk.TreeSelection)
|
||||
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
path = Gtk.TreePath(i)
|
||||
selection.select_path(path)
|
||||
if isinstance(node, curds.Playlist):
|
||||
|
@ -266,7 +266,7 @@ class TestManager(unittest.TestCase):
|
|||
self.assertFalse(selection.path_is_selected(path))
|
||||
|
||||
selection.unselect_all()
|
||||
self.assertEqual(playlist.PlistModel.playlist, plist_mgr.lookup("Previous"))
|
||||
self.assertEqual(playlist.PlistModel.playlist, plist_root.lookup("Previous"))
|
||||
|
||||
def test_manager_activate(self):
|
||||
column = manager.Treeview.get_column(1)
|
||||
|
@ -276,12 +276,12 @@ class TestManager(unittest.TestCase):
|
|||
path = filter.get_path(iter)
|
||||
|
||||
manager.Treeview.row_activated(path, column)
|
||||
self.assertEqual(plist_mgr.current[0], self.genre.nth_child(0))
|
||||
self.assertEqual(plist_root.current[0], self.genre.nth_child(0))
|
||||
|
||||
for i in range(3):
|
||||
path = Gtk.TreePath(i)
|
||||
manager.Treeview.row_activated(path, column)
|
||||
self.assertEqual(plist_mgr.current[0], plist_mgr.lookup("Collection"))
|
||||
self.assertEqual(plist_root.current[0], plist_root.lookup("Collection"))
|
||||
|
||||
def test_manager_filtering(self):
|
||||
filter = self.model.filter
|
||||
|
@ -293,7 +293,7 @@ class TestManager(unittest.TestCase):
|
|||
self.assertFalse(entry.get_style_context().has_class("warning"))
|
||||
self.assertFalse(manager.SearchPopover.is_visible())
|
||||
|
||||
for i, node in enumerate(plist_mgr.children):
|
||||
for i, node in enumerate(plist_root.children):
|
||||
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)
|
||||
|
@ -318,7 +318,7 @@ class TestManager(unittest.TestCase):
|
|||
self.assertFalse(entry.get_style_context().has_class("warning"))
|
||||
self.assertFalse(manager.SearchPopover.is_visible())
|
||||
|
||||
for i, node in enumerate(plist_mgr.children[2:]):
|
||||
for i, node in enumerate(plist_root.children[2:]):
|
||||
iter = filter.iter_nth_child(None, i)
|
||||
self.assertEqual(filter.get_value(iter, 1), str(node))
|
||||
child = filter.iter_nth_child(iter, 0)
|
||||
|
@ -337,18 +337,18 @@ class TestManager(unittest.TestCase):
|
|||
manager.LibraryAdd.clicked()
|
||||
gtk.main_loop()
|
||||
self.assertTrue(manager.LibraryPopover.is_visible())
|
||||
self.assertEqual(plist_mgr.lookup("Libraries").n_children(), 0)
|
||||
self.assertEqual(plist_root.lookup("Libraries").n_children(), 0)
|
||||
|
||||
manager.LibraryCancel.clicked()
|
||||
gtk.main_loop(iteration_delay=0.1)
|
||||
self.assertFalse(manager.LibraryPopover.is_visible())
|
||||
self.assertEqual(plist_mgr.lookup("Libraries").n_children(), 0)
|
||||
self.assertEqual(plist_root.lookup("Libraries").n_children(), 0)
|
||||
|
||||
manager.LibraryAdd.clicked()
|
||||
gtk.main_loop()
|
||||
self.assertEqual(manager.LibraryChooser.get_filename(), music_dir)
|
||||
self.assertTrue(manager.LibraryPopover.is_visible())
|
||||
self.assertEqual(plist_mgr.lookup("Libraries").n_children(), 0)
|
||||
self.assertEqual(plist_root.lookup("Libraries").n_children(), 0)
|
||||
|
||||
manager.LibraryChooser.set_filename(test_album1)
|
||||
gtk.main_loop(delay=0.1)
|
||||
|
@ -356,5 +356,5 @@ class TestManager(unittest.TestCase):
|
|||
|
||||
manager.LibraryOk.clicked()
|
||||
gtk.main_loop(iteration_delay=0.1)
|
||||
self.assertEqual(plist_mgr.lookup("Libraries").n_children(), 1)
|
||||
self.assertEqual(plist_root.lookup("Libraries").n_children(), 1)
|
||||
self.assertFalse(manager.LibraryPopover.is_visible())
|
||||
|
|
|
@ -23,7 +23,7 @@ class TestPlaylist(unittest.TestCase):
|
|||
|
||||
def test_model_init(self):
|
||||
model = playlist.PlaylistModel()
|
||||
self.assertEqual(model.playlist, curds.playlist.Manager.lookup("Collection"))
|
||||
self.assertEqual(model.playlist, curds.playlist.Root.lookup("Collection"))
|
||||
self.assertEqual(model.get_n_columns(), 7)
|
||||
self.assertEqual(model.get_flags(), Gtk.TreeModelFlags.LIST_ONLY)
|
||||
for col in range(model.get_n_columns()):
|
||||
|
|
|
@ -16,7 +16,7 @@ class TestEmmental(unittest.TestCase):
|
|||
self.assertEqual(curds.playlist.Node, curds.playlist.node.PlaylistNode)
|
||||
|
||||
self.assertIsNotNone(curds.notify)
|
||||
self.assertIsInstance(curds.playlist.Manager, curds.playlist.manager.PlaylistManager)
|
||||
self.assertIsInstance(curds.playlist.Root, curds.playlist.root.PlaylistRoot)
|
||||
|
||||
def test_import_rind(self):
|
||||
self.assertEqual(rind.Application, rind.gtk.Application)
|
||||
|
@ -38,8 +38,8 @@ class TestEmmental(unittest.TestCase):
|
|||
curds.reset()
|
||||
self.assertEqual(curds.tags.tag_map, {})
|
||||
self.assertTrue(curds.playlist.library.library_thread.is_alive())
|
||||
self.assertEqual(len(curds.playlist.Manager.lookup("Collection")), 0)
|
||||
self.assertEqual(curds.playlist.Manager.lookup("Libraries").n_children(), 0)
|
||||
self.assertEqual(len(curds.playlist.Root.lookup("Collection")), 0)
|
||||
self.assertEqual(curds.playlist.Root.lookup("Libraries").n_children(), 0)
|
||||
|
||||
curds.stop()
|
||||
self.assertFalse(curds.playlist.library.library_thread.is_alive())
|
||||
|
|
Loading…
Reference in New Issue