Merge pull request #179 from pylast/update-libre.fm-url

Update Libre.fm URL
This commit is contained in:
Hugo 2017-01-02 15:14:29 +01:00 committed by GitHub
commit 852d575415
2 changed files with 38 additions and 32 deletions

View file

@ -986,8 +986,8 @@ class LibreFMNetwork(_Network):
_Network.__init__(
self,
name="Libre.fm",
homepage="http://alpha.libre.fm",
ws_server=("alpha.libre.fm", "/2.0/"),
homepage="http://libre.fm",
ws_server=("libre.fm", "/2.0/"),
api_key=api_key,
api_secret=api_secret,
session_key=session_key,
@ -995,18 +995,18 @@ class LibreFMNetwork(_Network):
username=username,
password_hash=password_hash,
domain_names={
DOMAIN_ENGLISH: "alpha.libre.fm",
DOMAIN_GERMAN: "alpha.libre.fm",
DOMAIN_SPANISH: "alpha.libre.fm",
DOMAIN_FRENCH: "alpha.libre.fm",
DOMAIN_ITALIAN: "alpha.libre.fm",
DOMAIN_POLISH: "alpha.libre.fm",
DOMAIN_PORTUGUESE: "alpha.libre.fm",
DOMAIN_SWEDISH: "alpha.libre.fm",
DOMAIN_TURKISH: "alpha.libre.fm",
DOMAIN_RUSSIAN: "alpha.libre.fm",
DOMAIN_JAPANESE: "alpha.libre.fm",
DOMAIN_CHINESE: "alpha.libre.fm",
DOMAIN_ENGLISH: "libre.fm",
DOMAIN_GERMAN: "libre.fm",
DOMAIN_SPANISH: "libre.fm",
DOMAIN_FRENCH: "libre.fm",
DOMAIN_ITALIAN: "libre.fm",
DOMAIN_POLISH: "libre.fm",
DOMAIN_PORTUGUESE: "libre.fm",
DOMAIN_SWEDISH: "libre.fm",
DOMAIN_TURKISH: "libre.fm",
DOMAIN_RUSSIAN: "libre.fm",
DOMAIN_JAPANESE: "libre.fm",
DOMAIN_CHINESE: "libre.fm",
},
urls={
"album": "artist/%(artist)s/album/%(album)s",
@ -1766,15 +1766,15 @@ class WSError(Exception):
class MalformedResponseError(Exception):
"""Exception conveying a malformed response from Last.fm."""
"""Exception conveying a malformed response from the music network."""
def __init__(self, network, underlying_error):
self.network = network
self.underlying_error = underlying_error
def __str__(self):
return "Malformed response from Last.fm. Underlying error: %s" % str(
self.underlying_error)
return "Malformed response from {}. Underlying error: {}".format(
self.network.name, str(self.underlying_error))
class NetworkError(Exception):

View file

@ -375,21 +375,6 @@ class TestPyLast(unittest.TestCase):
self.assertEqual(str(current_track.title), "Test Title")
self.assertEqual(str(current_track.artist), "Test Artist")
@handle_lastfm_exceptions
def test_libre_fm(self):
# Arrange
username = self.__class__.secrets["username"]
password_hash = self.__class__.secrets["password_hash"]
# Act
network = pylast.LibreFMNetwork(
password_hash=password_hash, username=username)
tags = network.get_top_tags(limit=1)
# Assert
self.assertGreater(len(tags), 0)
self.assertIsInstance(tags[0], pylast.TopItem)
@handle_lastfm_exceptions
def test_album_tags_are_topitems(self):
# Arrange
@ -2175,5 +2160,26 @@ class TestPyLast(unittest.TestCase):
# Assert
self.assertEqual(mbid, None)
@flaky(max_runs=5, min_passes=1)
class TestPyLastWithLibreFm(unittest.TestCase):
"""Own class for Libre.fm because we don't need the Last.fm setUp"""
def test_libre_fm(self):
# Arrange
secrets = load_secrets()
username = secrets["username"]
password_hash = secrets["password_hash"]
# Act
network = pylast.LibreFMNetwork(
password_hash=password_hash, username=username)
artist = network.get_artist("Radiohead")
name = artist.get_name()
# Assert
self.assertEqual(name, "Radiohead")
if __name__ == '__main__':
unittest.main(failfast=True)