From f9a8bf3daee5a4fd4fa59dd0318e7172eff9c5f9 Mon Sep 17 00:00:00 2001 From: hugovk Date: Thu, 19 Oct 2017 00:55:20 +0300 Subject: [PATCH] More tests --- tests/test_pylast_album.py | 11 +++++++ tests/test_pylast_artist.py | 11 +++++++ tests/test_pylast_user.py | 64 ++++++++++++++++++++++++++++--------- 3 files changed, 71 insertions(+), 15 deletions(-) diff --git a/tests/test_pylast_album.py b/tests/test_pylast_album.py index a93c27d..53581a5 100755 --- a/tests/test_pylast_album.py +++ b/tests/test_pylast_album.py @@ -99,6 +99,17 @@ class TestPyLastAlbum(PyLastTestCase): # Act / Assert self.assertTrue(album1 != album2) + def test_get_cover_image(self): + # Arrange + album = self.network.get_album("Test Artist", "Test Album") + + # Act + image = album.get_cover_image() + + # Assert + self.assertTrue(image.startswith("https://")) + self.assertTrue(image.endswith(".png")) + if __name__ == '__main__': unittest.main(failfast=True) diff --git a/tests/test_pylast_artist.py b/tests/test_pylast_artist.py index 4fe15a2..bec278e 100755 --- a/tests/test_pylast_artist.py +++ b/tests/test_pylast_artist.py @@ -11,6 +11,17 @@ from .test_pylast import PyLastTestCase class TestPyLastArtist(PyLastTestCase): + def test_repr(self): + # Arrange + artist = pylast.Artist("Test Artist", self.network) + + # Act + representation = repr(artist) + + # Assert + self.assertTrue( + representation.startswith("pylast.Artist('Test Artist',")) + def test_artist_is_hashable(self): # Arrange test_artist = self.network.get_artist("Test Artist") diff --git a/tests/test_pylast_user.py b/tests/test_pylast_user.py index 26876bf..7613345 100755 --- a/tests/test_pylast_user.py +++ b/tests/test_pylast_user.py @@ -16,20 +16,17 @@ class TestPyLastUser(PyLastTestCase): def test_repr(self): # Arrange - username = "RJ" - user = self.network.get_user(username) + user = self.network.get_user("RJ") # Act representation = repr(user) # Assert - self.assertTrue( - representation.startswith(representation), "pylast.User('RJ',") + self.assertTrue(representation.startswith("pylast.User('RJ',")) def test_str(self): # Arrange - username = "RJ" - user = self.network.get_user(username) + user = self.network.get_user("RJ") # Act string = str(user) @@ -39,17 +36,27 @@ class TestPyLastUser(PyLastTestCase): def test_equality(self): # Arrange - username = "RJ" - user = self.network.get_user(username) + user_1a = self.network.get_user("RJ") + user_1b = self.network.get_user("RJ") + user_2 = self.network.get_user("Test User") not_a_user = self.network # Act / Assert - self.assertNotEqual(user, not_a_user) + self.assertEqual(user_1a, user_1b) + self.assertTrue(user_1a == user_1b) + self.assertFalse(user_1a != user_1b) + + self.assertNotEqual(user_1a, user_2) + self.assertTrue(user_1a != user_2) + self.assertFalse(user_1a == user_2) + + self.assertNotEqual(user_1a, not_a_user) + self.assertTrue(user_1a != not_a_user) + self.assertFalse(user_1a == not_a_user) def test_get_name(self): # Arrange - username = "RJ" - user = self.network.get_user(username) + user = self.network.get_user("RJ") # Act name = user.get_name(properly_capitalized=True) @@ -59,8 +66,7 @@ class TestPyLastUser(PyLastTestCase): def test_get_user_registration(self): # Arrange - username = "RJ" - user = self.network.get_user(username) + user = self.network.get_user("RJ") # Act registered = user.get_registered() @@ -75,8 +81,7 @@ class TestPyLastUser(PyLastTestCase): def test_get_user_unixtime_registration(self): # Arrange - username = "RJ" - user = self.network.get_user(username) + user = self.network.get_user("RJ") # Act unixtime_registered = user.get_unixtime_registered() @@ -458,6 +463,35 @@ class TestPyLastUser(PyLastTestCase): # Assert self.assertEqual(mbid, None) + def test_get_playcount(self): + # Arrange + user = self.network.get_user("RJ") + + # Act + playcount = user.get_playcount() + + # Assert + self.assertGreaterEqual(playcount, 128387) + + def test_get_image(self): + # Arrange + user = self.network.get_user("RJ") + + # Act / Assert + image = user.get_image() + + self.assertTrue(image.startswith("https://")) + self.assertTrue(image.endswith(".png")) + + def test_get_url(self): + # Arrange + user = self.network.get_user("RJ") + + # Act / Assert + url = user.get_url() + + self.assertEqual(url, "https://www.last.fm/user/rj") + if __name__ == '__main__': unittest.main(failfast=True)