From f59d2cc6809809c867cc7f1866a5585919d8e317 Mon Sep 17 00:00:00 2001 From: hugovk Date: Sat, 1 Mar 2014 16:44:13 +0200 Subject: [PATCH] Fix comparison of User to other types. Closes #75. --- pylast.py | 10 ++++++++-- test_pylast.py | 25 ++++++++++++++++++++++++- 2 files changed, 32 insertions(+), 3 deletions(-) diff --git a/pylast.py b/pylast.py index 51cb729..12b703a 100644 --- a/pylast.py +++ b/pylast.py @@ -2864,10 +2864,16 @@ class User(_BaseObject): return self.get_name() def __eq__(self, another): - return self.get_name() == another.get_name() + if isinstance(another, User): + return self.get_name() == another.get_name() + else: + return False def __ne__(self, another): - return self.get_name() != another.get_name() + if isinstance(another, User): + return self.get_name() != another.get_name() + else: + return True def _get_params(self): return {"user": self.get_name()} diff --git a/test_pylast.py b/test_pylast.py index 073e3be..7f8ef72 100755 --- a/test_pylast.py +++ b/test_pylast.py @@ -198,10 +198,33 @@ class TestPyLast(unittest.TestCase): self.assertGreaterEqual(len(albums), 0) + def test_user_equals_none(self): + # Arrange + lastfm_user = self.network.get_user(self.username) + + # Act + value = (lastfm_user == None) + + # Assert + self.assertFalse(value) + + + def test_user_not_equal_to_none(self): + # Arrange + lastfm_user = self.network.get_user(self.username) + + # Act + value = (lastfm_user != None) + + # Assert + self.assertTrue(value) + + if __name__ == '__main__': # suite = unittest.TestSuite() -# suite.addTest(TestPyLast('test_get_limitless_albums')) +# suite.addTest(TestPyLast('test_user_equals_none')) +# suite.addTest(TestPyLast('test_user_not_equal_to_none')) # unittest.TextTestRunner().run(suite) unittest.main()