From 517a2a935619180ebf534310de14ac5c1eb76c2b Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sat, 19 Mar 2011 18:05:09 +0100 Subject: [PATCH] Update MPD/music_db --- mopidy/frontends/mpd/protocol/music_db.py | 10 +++---- .../mpd/protocol/stored_playlists.py | 2 +- tests/frontends/mpd/music_db_test.py | 29 +++++++++++++------ 3 files changed, 26 insertions(+), 15 deletions(-) diff --git a/mopidy/frontends/mpd/protocol/music_db.py b/mopidy/frontends/mpd/protocol/music_db.py index d50388f5..a6836533 100644 --- a/mopidy/frontends/mpd/protocol/music_db.py +++ b/mopidy/frontends/mpd/protocol/music_db.py @@ -68,7 +68,7 @@ def find(frontend, mpd_query): - also uses the search type "date". """ query = _build_query(mpd_query) - return frontend.backend.library.find_exact(**query).mpd_format() + return frontend.backend.library.find_exact(**query).get().mpd_format() @handle_pattern(r'^findadd ' r'(?P("?([Aa]lbum|[Aa]rtist|[Ff]ilename|[Tt]itle|[Aa]ny)"? ' @@ -215,7 +215,7 @@ def _list_build_query(field, mpd_query): def _list_artist(frontend, query): artists = set() - playlist = frontend.backend.library.find_exact(**query) + playlist = frontend.backend.library.find_exact(**query).get() for track in playlist.tracks: for artist in track.artists: artists.add((u'Artist', artist.name)) @@ -223,7 +223,7 @@ def _list_artist(frontend, query): def _list_album(frontend, query): albums = set() - playlist = frontend.backend.library.find_exact(**query) + playlist = frontend.backend.library.find_exact(**query).get() for track in playlist.tracks: if track.album is not None: albums.add((u'Album', track.album.name)) @@ -231,7 +231,7 @@ def _list_album(frontend, query): def _list_date(frontend, query): dates = set() - playlist = frontend.backend.library.find_exact(**query) + playlist = frontend.backend.library.find_exact(**query).get() for track in playlist.tracks: if track.date is not None: dates.add((u'Date', track.date.strftime('%Y-%m-%d'))) @@ -324,7 +324,7 @@ def search(frontend, mpd_query): - also uses the search type "date". """ query = _build_query(mpd_query) - return frontend.backend.library.search(**query).mpd_format() + return frontend.backend.library.search(**query).get().mpd_format() @handle_pattern(r'^update( "(?P[^"]+)")*$') def update(frontend, uri=None, rescan_unmodified_files=False): diff --git a/mopidy/frontends/mpd/protocol/stored_playlists.py b/mopidy/frontends/mpd/protocol/stored_playlists.py index c34b1676..f0a63544 100644 --- a/mopidy/frontends/mpd/protocol/stored_playlists.py +++ b/mopidy/frontends/mpd/protocol/stored_playlists.py @@ -66,7 +66,7 @@ def listplaylists(frontend): Last-Modified: 2010-02-06T02:11:08Z """ result = [] - for playlist in frontend.backend.stored_playlists.playlists: + for playlist in frontend.backend.stored_playlists.playlists.get(): result.append((u'playlist', playlist.name)) last_modified = (playlist.last_modified or dt.datetime.now()).isoformat() diff --git a/tests/frontends/mpd/music_db_test.py b/tests/frontends/mpd/music_db_test.py index 486eac4f..595ef02c 100644 --- a/tests/frontends/mpd/music_db_test.py +++ b/tests/frontends/mpd/music_db_test.py @@ -2,12 +2,14 @@ import unittest from mopidy.backends.dummy import DummyBackend from mopidy.frontends.mpd import dispatcher -from mopidy.mixers.dummy import DummyMixer class MusicDatabaseHandlerTest(unittest.TestCase): def setUp(self): - self.b = DummyBackend(mixer_class=DummyMixer) - self.h = dispatcher.MpdDispatcher(backend=self.b) + self.b = DummyBackend.start().proxy() + self.h = dispatcher.MpdDispatcher() + + def tearDown(self): + self.b.stop().get() def test_count(self): result = self.h.handle_request(u'count "tag" "needle"') @@ -65,8 +67,11 @@ class MusicDatabaseHandlerTest(unittest.TestCase): class MusicDatabaseFindTest(unittest.TestCase): def setUp(self): - self.b = DummyBackend(mixer_class=DummyMixer) - self.h = dispatcher.MpdDispatcher(backend=self.b) + self.b = DummyBackend.start().proxy() + self.h = dispatcher.MpdDispatcher() + + def tearDown(self): + self.b.stop().get() def test_find_album(self): result = self.h.handle_request(u'find "album" "what"') @@ -117,8 +122,11 @@ class MusicDatabaseFindTest(unittest.TestCase): class MusicDatabaseListTest(unittest.TestCase): def setUp(self): - self.b = DummyBackend(mixer_class=DummyMixer) - self.h = dispatcher.MpdDispatcher(backend=self.b) + self.b = DummyBackend.start().proxy() + self.h = dispatcher.MpdDispatcher() + + def tearDown(self): + self.b.stop().get() def test_list_foo_returns_ack(self): result = self.h.handle_request(u'list "foo"') @@ -308,8 +316,11 @@ class MusicDatabaseListTest(unittest.TestCase): class MusicDatabaseSearchTest(unittest.TestCase): def setUp(self): - self.b = DummyBackend(mixer_class=DummyMixer) - self.h = dispatcher.MpdDispatcher(backend=self.b) + self.b = DummyBackend.start().proxy() + self.h = dispatcher.MpdDispatcher() + + def tearDown(self): + self.b.stop().get() def test_search_album(self): result = self.h.handle_request(u'search "album" "analbum"')