Merge pull request #230 from pylast/fix-search-total

Fix search.get_total_result_count()
This commit is contained in:
Hugo 2017-10-24 00:43:20 +03:00 committed by GitHub
commit 3a7cc9c410
4 changed files with 16 additions and 4 deletions

View file

@ -1,6 +1,6 @@
Apache License Apache License
Version 2.0, January 2004 Version 2.0, January 2004
http://www.apache.org/licenses/ https://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

View file

@ -830,7 +830,7 @@ class _Request(object):
try: try:
conn.request( conn.request(
method='POST', url="http://" + HOST_NAME + HOST_SUBDIR, method='POST', url="https://" + HOST_NAME + HOST_SUBDIR,
body=data, headers=headers) body=data, headers=headers)
except Exception as e: except Exception as e:
raise NetworkError(self.network, e) raise NetworkError(self.network, e)
@ -2483,7 +2483,7 @@ class _Search(_BaseObject):
doc = self._request(self._ws_prefix + ".search", True) doc = self._request(self._ws_prefix + ".search", True)
return _extract(doc, "opensearch:totalResults") return _extract(doc, "totalResults")
def _retrieve_page(self, page_index): def _retrieve_page(self, page_index):
"""Returns the node of matches to be processed""" """Returns the node of matches to be processed"""

View file

@ -213,7 +213,7 @@ class TestPyLastArtist(PyLastTestCase):
name_cap = artist1.get_name(properly_capitalized=True) name_cap = artist1.get_name(properly_capitalized=True)
# Assert # Assert
self.assertIn("http", image) self.assertIn("https", image)
self.assertGreater(playcount, 1) self.assertGreater(playcount, 1)
self.assertTrue(artist1 != artist2) self.assertTrue(artist1 != artist2)
self.assertEqual(name.lower(), name_cap.lower()) self.assertEqual(name.lower(), name_cap.lower())

View file

@ -339,6 +339,18 @@ class TestPyLastNetwork(PyLastTestCase):
self.assertIsInstance(results, list) self.assertIsInstance(results, list)
self.assertIsInstance(results[0], pylast.Track) self.assertIsInstance(results[0], pylast.Track)
def test_search_get_total_result_count(self):
# Arrange
artist = "Nirvana"
track = "Smells Like Teen Spirit"
search = self.network.search_for_track(artist, track)
# Act
total = search.get_total_result_count()
# Assert
self.assertGreater(int(total), 10000)
if __name__ == '__main__': if __name__ == '__main__':
unittest.main(failfast=True) unittest.main(failfast=True)