Skip to content

Commit

Permalink
Add unit tests for queue functions (#1059)
Browse files Browse the repository at this point in the history
* Update test.py

Add tests for queue manipulation/retrieval functions

* Update CHANGELOG.md

* flake8

---------

Co-authored-by: Stéphane Bruckert <[email protected]>
  • Loading branch information
bparrott3 and stephanebruckert authored May 31, 2024
1 parent cb36133 commit f94a89a
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 1 deletion.
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
Add your changes below.

### Added
-
- Added unit tests for queue functions

### Fixed
-
Expand Down
41 changes: 41 additions & 0 deletions tests/integration/user_endpoints/test.py
Original file line number Diff line number Diff line change
Expand Up @@ -558,3 +558,44 @@ def test_current_user(self):
c_user = self.spotify.current_user()
user = self.spotify.user(c_user['id'])
self.assertEqual(c_user['display_name'], user['display_name'])


class SpotifyQueueApiTests(unittest.TestCase):

@classmethod
def setUp(self):
self.spotify = Spotify(auth="test_token")

def test_get_queue(self, mock_get):
# Mock the response from _get
mock_get.return_value = {'songs': ['song1', 'song2']}

# Call the queue function
response = self.spotify.queue()

# Check if the correct endpoint is called
mock_get.assert_called_with("me/player/queue")

# Check if the response is as expected
self.assertEqual(response, {'songs': ['song1', 'song2']})

def test_add_to_queue(self, mock_post):
test_uri = 'spotify:track:123'

# Call the add_to_queue function
self.spotify.add_to_queue(test_uri)

# Check if the correct endpoint is called
endpoint = "me/player/queue?uri=%s" % test_uri
mock_post.assert_called_with(endpoint)

def test_add_to_queue_with_device_id(self, mock_post):
test_uri = 'spotify:track:123'
device_id = 'device123'

# Call the add_to_queue function with a device_id
self.spotify.add_to_queue(test_uri, device_id=device_id)

# Check if the correct endpoint is called
endpoint = "me/player/queue?uri=%s&device_id=%s" % (test_uri, device_id)
mock_post.assert_called_with(endpoint)

0 comments on commit f94a89a

Please sign in to comment.