diff --git a/pymusixmatch/musixmatch.py b/pymusixmatch/musixmatch.py index 3c2edd0..4d9e76c 100644 --- a/pymusixmatch/musixmatch.py +++ b/pymusixmatch/musixmatch.py @@ -211,34 +211,22 @@ def track_search( def track_get( self, - track_id, - commontrack_id=None, - track_isrc=None, - track_mbid=None, - _format="json", + commontrack_id: Optional[str] = "", + track_isrc: Optional[str] = "", ): """Get a track info from our database: title, artist, instrumental flag and cover art. Parameters: - track_id - The musiXmatch track id. - commontrack_id - The musiXmatch commontrack id. - track_isrc - A valid ISRC identifier. - track_mbid - The musicbrainz recording id. - format - Decide the output type json or xml (default json). + commontrack_id (str): The musiXmatch commontrack id. + track_isrc (str): A valid ISRC identifier. """ data = self._request( self._get_url( - "track.get?" - "track_id={}&commontrack_id={}" - "&track_isrc={}&track_mbid={}" - "&format={}".format( - track_id, + "track.get?commontrack_id={}&track_isrc={}".format( commontrack_id, track_isrc, - track_mbid, - _format, ), ), ) diff --git a/tests/conftest.py b/tests/conftest.py index 819e4fb..3a299c7 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -98,3 +98,13 @@ def track_search() -> dict: }, } } + + +@pytest.fixture +def track_get() -> dict: + return { + "message": { + "header": {"status_code": 200, "execute_time": 0.00136}, + "body": {"track": "track"}, + } + } diff --git a/tests/test_musixmatch.py b/tests/test_musixmatch.py index 5a1fe1d..8e9e4cf 100644 --- a/tests/test_musixmatch.py +++ b/tests/test_musixmatch.py @@ -139,20 +139,11 @@ def test_track_search_with_invalid_s_track_rating( s_track_rating="invalid", ) - @pytest.mark.skip("Refactor test") - def test_track_get(self): - self.assertEqual( - self.musixmatch.track_get(15445219)["message"]["body"]["track"][ - "artist_name" - ], - "Lady Gaga", - ) - self.assertEqual( - self.musixmatch.track_get(15445219)["message"]["body"]["track"][ - "album_name" - ], - "The Fame Monster", - ) + def test_track_get(self, requests_mock, track_get: dict) -> None: + url = "https://api.musixmatch.com/ws/1.1/track.get?commontrack_id=12345&track_isrc=&apikey=test" + requests_mock.get(url=url, json=track_get) + request = self.musixmatch.track_get(12345) + assert track_get == request def test_track_lyrics_get(self, requests_mock, tracks: dict) -> None: url = "https://api.musixmatch.com/ws/1.1/track.lyrics.get?track_id=12345"