Exemplo n.º 1
0
 def _call_parse_valid_deezer_playlist(self, playlist):
     playlist_name, songs = parse_deezer_playlist(playlist)
     self.assertEqual(playlist_name, "test-playlist")
     self.assertIsInstance(songs, list)
     self.assertEqual(len(songs), 2)
     for song in songs:
         song_keys = list(song.keys())
         for key in known_song_keys:
             self.assertIn(key, song_keys)
     self.assertEqual(songs[0]["SNG_ID"], "113951680")
     self.assertEqual(songs[0]["ART_NAME"], 'Fredrika Stahl')
     self.assertEqual(songs[0]["SNG_TITLE"], 'Make a Change')
     self.assertEqual(songs[0]["MD5_ORIGIN"], '57250623592ef44c8caeead79917f7e5')
Exemplo n.º 2
0
 def _call_parse_valid_deezer_playlist(self, playlist):
     playlist_name, songs = parse_deezer_playlist(playlist)
     self.assertEqual(playlist_name, "Gitarre")
     self.assertIsInstance(songs, list)
     self.assertEqual(len(songs), 13)
     for song in songs:
         song_keys = list(song.keys())
         for key in known_song_keys:
             self.assertIn(key, song_keys)
     self.assertEqual(songs[0]["SNG_ID"], "725274")
     self.assertEqual(songs[0]["ART_NAME"], "Red Hot Chili Peppers")
     self.assertEqual(songs[0]["SNG_TITLE"], "Californication")
     self.assertEqual(songs[0]["MD5_ORIGIN"],
                      "0f951cee0984919d5453cad7e763cc04")
Exemplo n.º 3
0
def download_deezer_playlist_and_queue_and_zip(playlist_id, add_to_playlist,
                                               create_zip):
    playlist_name, songs = parse_deezer_playlist(playlist_id)
    songs_absolute_location = []
    for i, song in enumerate(songs):
        report_progress(i, len(songs))
        absolute_filename = download_song_and_get_absolute_filename(
            TYPE_PLAYLIST, song, playlist_name)
        songs_absolute_location.append(absolute_filename)
    update_mpd_db(songs_absolute_location, add_to_playlist)
    songs_with_m3u8_file = create_m3u8_file(songs_absolute_location)
    if create_zip:
        return [create_zip_file(songs_with_m3u8_file)]
    return make_song_paths_relative_to_mpd_root(songs_absolute_location)
Exemplo n.º 4
0
 def test_parse_invalid_deezer_playlist_with_url(self):
     invalid_playlist_url = "https://www.heise.de"
     with self.assertRaises(DeezerApiException):
         playlist_name, songs = parse_deezer_playlist(invalid_playlist_url)
Exemplo n.º 5
0
 def test_parse_invalid_input_for_deezer_playlist_with_id(self):
     invalid_playlist_id = "!\"§$%&/((;-';k(()=+ü\\?"
     with self.assertRaises(DeezerApiException):
         playlist_name, songs = parse_deezer_playlist(invalid_playlist_id)
Exemplo n.º 6
0
 def test_parse_invalid_deezer_playlist_with_id(self):
     invalid_playlist_id = "999999999999999999999999999"
     with self.assertRaises(DeezerApiException):
         playlist_name, songs = parse_deezer_playlist(invalid_playlist_id)