Exemplo n.º 1
0
 def test_spotify_refresh_token_which_has_not_expired(
         self, mock_refresh_user_token, mock_get_user):
     self.temporary_login(self.user['login_id'])
     # token hasn't expired
     expires = datetime.utcfromtimestamp(int(time.time()) -
                                         10).replace(tzinfo=pytz.UTC)
     spotify_user = spotify.Spotify(
         user_id=self.user['id'],
         musicbrainz_id=self.user['musicbrainz_id'],
         musicbrainz_row_id=self.user['musicbrainz_row_id'],
         user_token='old-token',
         token_expires=expires,  # token has expired
         refresh_token='old-refresh-token',
         last_updated=None,
         record_listens=True,
         error_message=None,
         latest_listened_at=None,
         permission='user-read-recently-played',
     )
     mock_get_user.return_value = spotify_user
     spotify_user.user_token = 'new-token'
     mock_refresh_user_token.return_value = spotify_user
     r = self.client.post(url_for('profile.refresh_spotify_token'))
     self.assert200(r)
     mock_refresh_user_token.assert_called_once()
     self.assertDictEqual(
         r.json, {
             'id': self.user['id'],
             'musicbrainz_id': self.user['musicbrainz_id'],
             'user_token': 'new-token',
             'permission': 'user-read-recently-played',
         })
Exemplo n.º 2
0
 def test_spotify_refresh_token_which_has_been_revoked(
         self, mock_refresh_user_token, mock_get_user):
     self.temporary_login(self.user['login_id'])
     # token hasn't expired
     expires = datetime.utcfromtimestamp(int(time.time()) -
                                         10).replace(tzinfo=pytz.UTC)
     spotify_user = spotify.Spotify(
         user_id=self.user['id'],
         musicbrainz_id=self.user['musicbrainz_id'],
         musicbrainz_row_id=self.user['musicbrainz_row_id'],
         user_token='old-token',
         token_expires=expires,  # token has expired
         refresh_token='old-refresh-token',
         last_updated=None,
         record_listens=True,
         error_message=None,
         latest_listened_at=None,
         permission='user-read-recently-played',
     )
     mock_get_user.return_value = spotify_user
     mock_refresh_user_token.return_value = None
     response = self.client.post(url_for('profile.refresh_spotify_token'))
     self.assertEqual(response.json, {
         'code': 404,
         'error': 'User has revoked authorization to Spotify'
     })
Exemplo n.º 3
0
 def setUp(self):
     super(SpotifyDomainTestCase, self).setUp()
     self.spotify_user = spotify.Spotify(
         user_id=1,
         musicbrainz_id='spotify_user',
         user_token='old-token',
         token_expires=int(time.time()),
         refresh_token='old-refresh-token',
         last_updated=None,
         active=True,
         error_message=None,
         latest_listened_at=None,
     )
Exemplo n.º 4
0
 def setUp(self):
     super(SpotifyDomainTestCase, self).setUp()
     self.spotify_user = spotify.Spotify(
         user_id=1,
         musicbrainz_id='spotify_user',
         musicbrainz_row_id=312,
         user_token='old-token',
         token_expires=int(time.time()),
         refresh_token='old-refresh-token',
         last_updated=None,
         record_listens=True,
         error_message=None,
         latest_listened_at=None,
         permission='user-read-recently-played',
     )