diff --git a/mopidy/frontends/mpd/translator.py b/mopidy/frontends/mpd/translator.py index ccd83fde..f66c64a7 100644 --- a/mopidy/frontends/mpd/translator.py +++ b/mopidy/frontends/mpd/translator.py @@ -87,6 +87,8 @@ def uri_to_mpd_relative_path(uri): :type uri: string :rtype: string """ + if uri is None: + return '' path = path_to_uri(settings.LOCAL_MUSIC_FOLDER) return re.sub('^' + re.escape(path), '', uri) diff --git a/tests/frontends/mpd/serializer_test.py b/tests/frontends/mpd/serializer_test.py index cd9320b6..960e5ebd 100644 --- a/tests/frontends/mpd/serializer_test.py +++ b/tests/frontends/mpd/serializer_test.py @@ -67,6 +67,11 @@ class UriToMpdRelativePathTest(unittest.TestCase): def tearDown(self): settings.runtime.clear() + def test_none_file_returns_empty_string(self): + uri = 'file:///dir/subdir/music/album/song.mp3' + result = translator.uri_to_mpd_relative_path(None) + self.assertEqual('', result) + def test_file_gets_stripped(self): uri = 'file:///dir/subdir/music/album/song.mp3' result = translator.uri_to_mpd_relative_path(uri)