Merge pull request #539 from adamcik/fix/bug-527-temp-workaround
local: Temporary workaround for issue #527
This commit is contained in:
commit
96008ca826
@ -6,7 +6,7 @@ import os
|
|||||||
import shutil
|
import shutil
|
||||||
|
|
||||||
from mopidy.backends import base, listener
|
from mopidy.backends import base, listener
|
||||||
from mopidy.models import Playlist
|
from mopidy.models import Playlist, Track
|
||||||
from mopidy.utils import formatting, path
|
from mopidy.utils import formatting, path
|
||||||
|
|
||||||
from .translator import parse_m3u
|
from .translator import parse_m3u
|
||||||
@ -51,12 +51,11 @@ class LocalPlaylistsProvider(base.BasePlaylistsProvider):
|
|||||||
|
|
||||||
tracks = []
|
tracks = []
|
||||||
for track_uri in parse_m3u(m3u, self._media_dir):
|
for track_uri in parse_m3u(m3u, self._media_dir):
|
||||||
try:
|
result = self.backend.library.lookup(track_uri)
|
||||||
# TODO We must use core.library.lookup() to support tracks
|
if result:
|
||||||
# from other backends
|
|
||||||
tracks += self.backend.library.lookup(track_uri)
|
tracks += self.backend.library.lookup(track_uri)
|
||||||
except LookupError as ex:
|
else:
|
||||||
logger.warning('Playlist item could not be added: %s', ex)
|
tracks.append(Track(uri=track_uri))
|
||||||
|
|
||||||
playlist = Playlist(uri=uri, name=name, tracks=tracks)
|
playlist = Playlist(uri=uri, name=name, tracks=tracks)
|
||||||
playlists.append(playlist)
|
playlists.append(playlist)
|
||||||
|
|||||||
@ -201,6 +201,18 @@ class LocalPlaylistsProviderTest(unittest.TestCase):
|
|||||||
self.assertNotIn(playlist1, self.core.playlists.playlists)
|
self.assertNotIn(playlist1, self.core.playlists.playlists)
|
||||||
self.assertIn(playlist2, self.core.playlists.playlists)
|
self.assertIn(playlist2, self.core.playlists.playlists)
|
||||||
|
|
||||||
@unittest.SkipTest
|
|
||||||
def test_playlist_with_unknown_track(self):
|
def test_playlist_with_unknown_track(self):
|
||||||
pass
|
track = Track(uri='file:///dev/null')
|
||||||
|
playlist = self.core.playlists.create('test')
|
||||||
|
playlist = playlist.copy(tracks=[track])
|
||||||
|
playlist = self.core.playlists.save(playlist)
|
||||||
|
|
||||||
|
backend = self.backend_class(config=self.config, audio=self.audio)
|
||||||
|
|
||||||
|
self.assert_(backend.playlists.playlists)
|
||||||
|
self.assertEqual(
|
||||||
|
'local:playlist:test', backend.playlists.playlists[0].uri)
|
||||||
|
self.assertEqual(
|
||||||
|
playlist.name, backend.playlists.playlists[0].name)
|
||||||
|
self.assertEqual(
|
||||||
|
track.uri, backend.playlists.playlists[0].tracks[0].uri)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user