From 49c8062ba6ab55b982d8f8b2c0f357ccd1c18a85 Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Sat, 23 Mar 2013 20:58:22 +0100 Subject: [PATCH] mpris: Add discNumber support --- docs/changes.rst | 2 ++ mopidy/frontends/mpris/objects.py | 2 ++ tests/frontends/mpris/player_interface_test.py | 7 +++++++ 3 files changed, 11 insertions(+) diff --git a/docs/changes.rst b/docs/changes.rst index 92f52356..defe0033 100644 --- a/docs/changes.rst +++ b/docs/changes.rst @@ -24,6 +24,8 @@ v0.13.0 (in development) - Publish album art URIs if available. +- Publish disc number of track if available. + v0.12.0 (2013-03-12) ==================== diff --git a/mopidy/frontends/mpris/objects.py b/mopidy/frontends/mpris/objects.py index 4c72a85b..a9a93b45 100644 --- a/mopidy/frontends/mpris/objects.py +++ b/mopidy/frontends/mpris/objects.py @@ -379,6 +379,8 @@ class MprisObject(dbus.service.Object): url = list(track.album.images)[0] if url: metadata['mpris:artUrl'] = url + if track.disc_no: + metadata['xesam:discNumber'] = track.disc_no if track.track_no: metadata['xesam:trackNumber'] = track.track_no return dbus.Dictionary(metadata, signature='sv') diff --git a/tests/frontends/mpris/player_interface_test.py b/tests/frontends/mpris/player_interface_test.py index 5832c710..0c477dc8 100644 --- a/tests/frontends/mpris/player_interface_test.py +++ b/tests/frontends/mpris/player_interface_test.py @@ -224,6 +224,13 @@ class PlayerInterfaceTest(unittest.TestCase): result = self.mpris.Get(objects.PLAYER_IFACE, 'Metadata') self.assertNotIn('mpris:artUrl', result.keys()) + def test_get_metadata_has_disc_number_in_album(self): + self.core.tracklist.add([Track(disc_no=2)]) + self.core.playback.play() + result = self.mpris.Get(objects.PLAYER_IFACE, 'Metadata') + self.assertIn('xesam:discNumber', result.keys()) + self.assertEqual(result['xesam:discNumber'], 2) + def test_get_metadata_has_track_number_in_album(self): self.core.tracklist.add([Track(track_no=7)]) self.core.playback.play()