Remove duplicates from library root.

Closes #708
This commit is contained in:
dz0ny 2014-06-26 16:20:56 +02:00
parent 24f9a2ac3b
commit d871ca9128
2 changed files with 4 additions and 3 deletions

View File

@ -62,7 +62,8 @@ class LibraryController(object):
"""
if uri is None:
backends = self.backends.with_library_browse.values()
return [b.library.root_directory.get() for b in backends]
root = [b.library.root_directory.get() for b in backends]
return list(collections.OrderedDict.fromkeys(root))
scheme = urlparse.urlparse(uri).scheme
backend = self.backends.with_library_browse.get(scheme)

View File

@ -19,7 +19,7 @@ class CoreLibraryTest(unittest.TestCase):
dummy2_root = Ref.directory(uri='dummy2:directory', name='dummy2')
self.backend2 = mock.Mock()
self.backend2.uri_schemes.get.return_value = ['dummy2']
self.backend2.uri_schemes.get.return_value = ['dummy2', 'du2']
self.library2 = mock.Mock(spec=backend.LibraryProvider)
self.library2.root_directory.get.return_value = dummy2_root
self.backend2.library = self.library2
@ -138,7 +138,7 @@ class CoreLibraryTest(unittest.TestCase):
self.core.library.refresh()
self.library1.refresh.assert_called_once_with(None)
self.library2.refresh.assert_called_once_with(None)
self.library2.refresh.assert_called_twice_with(None)
def test_find_exact_combines_results_from_all_backends(self):
track1 = Track(uri='dummy1:a')