diff --git a/mopidy/frontends/mpd/translator.py b/mopidy/frontends/mpd/translator.py index 46c3ccbe..5f064cc9 100644 --- a/mopidy/frontends/mpd/translator.py +++ b/mopidy/frontends/mpd/translator.py @@ -26,7 +26,7 @@ def track_to_mpd_format(track, position=None, cpid=None, key=False, mtime=False) result = [ ('file', uri_to_mpd_relative_path(track.uri) or ''), ('Time', track.length and (track.length // 1000) or 0), - ('Artist', track_artists_to_mpd_format(track)), + ('Artist', artists_to_mpd_format(track.artists)), ('Title', track.name or ''), ('Album', track.album and track.album.name or ''), ('Date', track.date or ''), @@ -46,15 +46,14 @@ def track_to_mpd_format(track, position=None, cpid=None, key=False, mtime=False) result.append(('mtime', int(mtime))) return result -def track_artists_to_mpd_format(track): +def artists_to_mpd_format(artists): """ Format track artists for output to MPD client. - :param track: the track - :type track: :class:`mopidy.models.Track` + :param artists: the artists + :type track: array of :class:`mopidy.models.Artist` :rtype: string """ - artists = track.artists artists.sort(key=lambda a: a.name) return u', '.join([a.name for a in artists]) diff --git a/tests/frontends/mpd/serializer_test.py b/tests/frontends/mpd/serializer_test.py index 31b03a7a..deca960f 100644 --- a/tests/frontends/mpd/serializer_test.py +++ b/tests/frontends/mpd/serializer_test.py @@ -91,9 +91,9 @@ class TrackMpdFormatTest(unittest.TestCase): self.assert_(('Id', 122) in result) self.assertEqual(len(result), 9) - def test_track_artists_to_mpd_format(self): - track = Track(artists=[Artist(name=u'ABBA'), Artist(name=u'Beatles')]) - translated = translator.track_artists_to_mpd_format(track) + def test_artists_to_mpd_format(self): + artists = [Artist(name=u'ABBA'), Artist(name=u'Beatles')] + translated = translator.artists_to_mpd_format(artists) self.assertEqual(translated, u'ABBA, Beatles')