Esempio n. 1
0
 def setUp(self):
     self.access_token = get_access_token()
     self.artist = Seal()
     self.artist_json = "test/test_artifacts/seal.json"
     self.prettyprint_json_filename = "test/test_artifacts/functional.json"
     self.search_url = "https://api.spotify.com/v1/search"
     self.search_key = f"?q={self.artist.name}&type=artist&market=US&limit=1"
Esempio n. 2
0
 def test_refresh_spotify_access_token(self):
     m = hashlib.sha3_256()
     with open(self.keys, "rb") as F:
         buffer = F.read()
         m.update(buffer)
     initial_hash = m.digest()
     refresh_spotify_access_token()
     with open(self.keys, "rb") as F:
         buffer = F.read()
         m.update(buffer)
     new_hash = m.digest()
     self.assertNotEqual(initial_hash, new_hash)
     self.assertEqual(
         get_json_response_dict(get_access_token(), self.search_example)["artists"]["href"],
         self.search_content["artists"]["href"],
     )
 def setUp(self):
     self.access_token = get_access_token()
     self.playlist = Playlist("__TEST__")
     self.track_id = "1KueOLeUZpaNRK2InckxVT"
#!/usr/bin/python3
#
#   A. Gnias
#   Created: 7/12/2019
#
#   5.4.0-32-generic #36-Ubuntu
#   Python 3.8.2
#   Vim 8.1
"""
Script which returns the top search results for each track in a playlist.csv style file
"""

import argparse
from src.parse_file_into_tracks import parse_file_playlist
from spotify_token_refresh.refresh import get_access_token

if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("-k",
                        "--keys",
                        default="keys.json",
                        help="Keys file containing auth token")
    parser.add_argument("-f",
                        "--filename",
                        default="playlist.csv",
                        help="File containing tracks to add to playlist")
    args = parser.parse_args()
    for track in parse_file_playlist(args.filename):
        track.view_top_results(get_access_token())
Esempio n. 5
0
 def setUp(self):
     self.access_token = get_access_token()
     self.track = Track("Blue in Green", "Miles Davis")
Esempio n. 6
0
                        default="SpotifyAPI Test Playlist",
                        help="Playlist name")
    parser.add_argument(
        "-d",
        "--description",
        default="Playlist generated from playlist_generator.py",
        help="Playlist description")
    args = parser.parse_args()
    keys_filename, playlist_fname, playlist_display_name, playlist_description = (
        args.keys,
        args.filename,
        args.name,
        args.description,
    )
    try:
        user_oauth_token = get_access_token(keys_filename)
    except FileNotFoundError:
        sys.exit(
            f'Path to file "{keys_filename}" either does not exist; Exiting')
    except JSONDecodeError as e:
        sys.exit(f'{keys_filename}" must be a valid json: \nError: {e}')
    try:
        playlist_tracks = parse_file_playlist(playlist_fname)
    except FileNotFoundError:
        sys.exit(
            f'Path to file "{playlist_fname}" does not exist or does not have any content; Exiting'
        )

    print(f'Creating the playlist "{playlist_display_name}"')
    playlist = Playlist(playlist_display_name, playlist_tracks)
    try:
Esempio n. 7
0
 def test_get_access_token(self):
     self.assertEqual(get_access_token(self.test_keys), self.test_access_token)