Use client credentials flow to fix broken non-authorized requests

This commit is contained in:
Alisha Ukani committed 2018-01-16 18:58:21 -05:00
1 parent 4c2c1d763a
commit 63eebfa930
17 files changed
+63 -21

No files matched your search

+10 -5
View File
@@ -4,6 +4,7 @@ import unittest
import pprint
import requests
from spotipy.client import SpotifyException
from spotipy.oauth2 import SpotifyClientCredentials
class TestSpotipy(unittest.TestCase):
@@ -23,7 +24,8 @@ class TestSpotipy(unittest.TestCase):
bad_id = 'BAD_ID'
def setUp(self):
self.spotify = spotipy.Spotify()
client_credentials_manager = SpotifyClientCredentials()
self.spotify = spotipy.Spotify(client_credentials_manager=client_credentials_manager)
def test_artist_urn(self):
artist = self.spotify.artist(self.radiohead_urn)
@@ -121,11 +123,12 @@ class TestSpotipy(unittest.TestCase):
self.assertTrue(found)
def test_search_timeout(self):
sp = spotipy.Spotify(requests_timeout=.1)
client_credentials_manager = SpotifyClientCredentials()
sp = spotipy.Spotify(client_credentials_manager=client_credentials_manager, requests_timeout=.1)
try:
results = sp.search(q='my*', type='track')
self.assertTrue(False, 'unexpected search timeout')
except requests.ReadTimeout:
except requests.exceptions.Timeout:
self.assertTrue(True, 'expected search timeout')
@@ -169,12 +172,14 @@ class TestSpotipy(unittest.TestCase):
from requests import Session
sess = Session()
sess.headers["user-agent"] = "spotipy-test"
with_custom_session = spotipy.Spotify(requests_session=sess)
client_credentials_manager = SpotifyClientCredentials()
with_custom_session = spotipy.Spotify(client_credentials_manager=client_credentials_manager, requests_session=sess)
self.assertTrue(with_custom_session.user(user="akx")["uri"] == "spotify:user:akx")
def test_force_no_requests_session(self):
from requests import Session
with_no_session = spotipy.Spotify(requests_session=False)
client_credentials_manager = SpotifyClientCredentials()
with_no_session = spotipy.Spotify(client_credentials_manager=client_credentials_manager, requests_session=False)
self.assertFalse(isinstance(with_no_session._session, Session))
self.assertTrue(with_no_session.user(user="akx")["uri"] == "spotify:user:akx")