Esempio n. 1
0
 def add(self, track, tags=None, duration=None):
     if track.album and track.album.name:  # FIXME: album required
         uri = translator.local_uri_to_file_uri(track.uri, self.media_dir)
         try:
             if tags is None:
                 images = self._extract_images(track.uri, self._scan(uri))
             else:
                 images = self._extract_images(track.uri, tags)
             album = track.album.copy(images=images)
             track = track.copy(album=album)
         except Exception as e:
             logger.warn('Error extracting images for %s: %s', uri, e)
     if getattr(self.library, 'add_supports_tags_and_duration', False):
         self.library.add(track, tags, duration)
     else:
         self.library.add(track)
Esempio n. 2
0
 def translate_uri(self, uri):
     return translator.local_uri_to_file_uri(
         uri, self.backend.config['local']['media_dir'])
Esempio n. 3
0
def test_local_uri_to_file_uri_errors(uri):
    media_dir = b'/home/alice/Music'

    with pytest.raises(ValueError):
        translator.local_uri_to_file_uri(uri, media_dir)
Esempio n. 4
0
def test_local_uri_to_file_uri(local_uri, file_uri):
    media_dir = b'/home/alice/Music'

    assert translator.local_uri_to_file_uri(local_uri, media_dir) == file_uri
Esempio n. 5
0
def test_local_uri_to_file_uri_errors(uri):
    media_dir = b'/home/alice/Music'

    with pytest.raises(ValueError):
        translator.local_uri_to_file_uri(uri, media_dir)
Esempio n. 6
0
def test_local_uri_to_file_uri(local_uri, file_uri):
    media_dir = b'/home/alice/Music'

    assert translator.local_uri_to_file_uri(local_uri, media_dir) == file_uri