core: Fix library.lookup with an empty uri list. Fixes #1619.

This commit is contained in:
Nick Steel 2017-05-17 17:53:17 +01:00
parent b3fd967cac
commit d6eff50597
2 changed files with 6 additions and 2 deletions

View File

@ -228,8 +228,9 @@ class LibraryController(object):
# TODO: lookup(uris) to backend APIs # TODO: lookup(uris) to backend APIs
for backend, backend_uris in self._get_backends_to_uris(uris).items(): for backend, backend_uris in self._get_backends_to_uris(uris).items():
for u in backend_uris: if backend_uris:
futures[(backend, u)] = backend.library.lookup(u) for u in backend_uris:
futures[(backend, u)] = backend.library.lookup(u)
for (backend, u), future in futures.items(): for (backend, u), future in futures.items():
with _backend_error_handling(backend): with _backend_error_handling(backend):

View File

@ -148,6 +148,9 @@ class CoreLibraryTest(BaseCoreLibraryTest):
Ref.track(uri='dummy1:track:/foo/baz.mp3', name='Baz'), Ref.track(uri='dummy1:track:/foo/baz.mp3', name='Baz'),
]) ])
def test_lookup_returns_empty_dict_for_no_uris(self):
self.assertEqual({}, self.core.library.lookup(uris=[]))
def test_lookup_fails_with_uri_and_uris_set(self): def test_lookup_fails_with_uri_and_uris_set(self):
with self.assertRaises(ValueError): with self.assertRaises(ValueError):
self.core.library.lookup('dummy1:a', ['dummy2:a']) self.core.library.lookup('dummy1:a', ['dummy2:a'])